home *** CD-ROM | disk | FTP | other *** search
/ Giga Games 1 / Giga Games.iso / net / usenet / volume7 / nethack3 / patch7d < prev    next >
Encoding:
Internet Message Format  |  1990-02-26  |  59.3 KB

  1. Path: uunet!snorkelwacker!mit-eddie!uw-beaver!zephyr.ens.tek.com!tekred!saab!billr
  2. From: billr@saab.CNA.TEK.COM (Bill Randle)
  3. Newsgroups: comp.sources.games
  4. Subject: v09i004:  NetHack3 -  display oriented dungeons & dragons (Ver. 3.0), Patch7d
  5. Message-ID: <5218@tekred.CNA.TEK.COM>
  6. Date: 24 Feb 90 00:29:53 GMT
  7. Sender: news@tekred.CNA.TEK.COM
  8. Lines: 2005
  9. Approved: billr@saab.CNA.TEK.COM
  10.  
  11. Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
  12. Posting-number: Volume 9, Issue 4
  13. Archive-name: NetHack3/Patch7d
  14. Patch-To: NetHack3: Volume 7, Issue 56-93
  15.  
  16.  
  17.  
  18. #! /bin/sh
  19. # This is a shell archive.  Remove anything before this line, then unpack
  20. # it by saving it into a file and typing "sh file".  To overwrite existing
  21. # files, type "sh file -c".  You can also feed this as standard input via
  22. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  23. # will see the following message at the end:
  24. #        "End of archive 4 (of 30)."
  25. # Contents:  patch7.22
  26. # Wrapped by billr@saab on Wed Feb 21 10:04:25 1990
  27. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  28. if test -f 'patch7.22' -a "${1}" != "-c" ; then 
  29.   echo shar: Renaming existing file \"'patch7.22'\" to \"'patch7.22.orig'\"
  30.   mv -f 'patch7.22' 'patch7.22.orig'
  31. fi
  32. echo shar: Extracting \"'patch7.22'\" \(56824 characters\)
  33. sed "s/^X//" >'patch7.22' <<'END_OF_FILE'
  34. X*** src/Old/topten.c    Mon Feb 19 19:03:06 1990
  35. X--- src/topten.c    Mon Feb  5 18:28:48 1990
  36. X***************
  37. X*** 1,9 ****
  38. X! /*    SCCS Id: @(#)topten.c    3.0    89/11/15
  39. X  /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  40. X  /* NetHack may be freely redistributed.  See license for details. */
  41. X  
  42. X  /* block some unused #defines to avoid overloading some cpp's */
  43. X- #define MONATTK_H
  44. X  #include "hack.h"
  45. X  
  46. X  #ifndef MACOS
  47. X--- 1,10 ----
  48. X! /*    SCCS Id: @(#)topten.c    3.0    89/12/31
  49. X  /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  50. X  /* NetHack may be freely redistributed.  See license for details. */
  51. X  
  52. X+ #define MONATTK_H    /* comment line for pre-compiled headers */
  53. X+ #define MONFLAG_H    /* comment line for pre-compiled headers */
  54. X  /* block some unused #defines to avoid overloading some cpp's */
  55. X  #include "hack.h"
  56. X  
  57. X  #ifndef MACOS
  58. X***************
  59. X*** 12,20 ****
  60. X--- 13,28 ----
  61. X  extern short macflags;
  62. X  extern WindowPtr    HackWindow;
  63. X  #endif
  64. X+ 
  65. X  #ifdef NO_FILE_LINKS
  66. X  #include <fcntl.h>    /* Ralf Brown */
  67. X  #endif
  68. X+ #include <ctype.h>
  69. X+ 
  70. X+ #ifdef LATTICE
  71. X+ static void FDECL(lattice_mung_line,(char*));
  72. X+ static void FDECL(lattice_unmung_line,(char*));
  73. X+ #endif
  74. X  
  75. X  #define newttentry() (struct toptenentry *) alloc(sizeof(struct toptenentry))
  76. X  #define    NAMSZ    10
  77. X***************
  78. X*** 22,27 ****
  79. X--- 30,36 ----
  80. X  #define    PERSMAX     3        /* entries per name/uid per char. allowed */
  81. X  #define    POINTSMIN    1    /* must be > 0 */
  82. X  #define    ENTRYMAX    100    /* must be >= 10 */
  83. X+ 
  84. X  #ifndef MSDOS
  85. X  #define    PERS_IS_UID        /* delete for PERSMAX per name; now per uid */
  86. X  #endif
  87. X***************
  88. X*** 37,48 ****
  89. X      char date[7];        /* yymmdd */
  90. X  } *tt_head;
  91. X  
  92. X! static char *FDECL(itoa, (int)), *FDECL(ordin, (int));
  93. X  static void outheader();
  94. X  static int FDECL(outentry, (int,struct toptenentry *,int));
  95. X  
  96. X  void
  97. X! topten(){
  98. X      int uid = getuid();
  99. X      int rank, rank0 = -1, rank1 = 0;
  100. X      int occ_cnt = PERSMAX;
  101. X--- 46,67 ----
  102. X      char date[7];        /* yymmdd */
  103. X  } *tt_head;
  104. X  
  105. X! static char *FDECL(itoa, (int));
  106. X! static const char *FDECL(ordin, (int));
  107. X  static void outheader();
  108. X  static int FDECL(outentry, (int,struct toptenentry *,int));
  109. X  
  110. X+ /* must fit with end.c */
  111. X+ static const char *killed_by_prefix[] = {
  112. X+     "killed by ", "choked on ", "poisoned by ", "", "drowned in ",
  113. X+     "", "crushed to death by ", "petrified by ", "",
  114. X+     "", "",
  115. X+     "", "", "" };
  116. X+ 
  117. X  void
  118. X! topten(how)
  119. X! int how;
  120. X! {
  121. X      int uid = getuid();
  122. X      int rank, rank0 = -1, rank1 = 0;
  123. X      int occ_cnt = PERSMAX;
  124. X***************
  125. X*** 57,63 ****
  126. X      char *reclock = "record_lock;1";
  127. X      char recfile[] = RECORD;
  128. X  #else
  129. X!     char *recfile = RECORD;
  130. X  #endif
  131. X  #if defined(UNIX) || defined(VMS)
  132. X      int sleepct = 100;
  133. X--- 76,82 ----
  134. X      char *reclock = "record_lock;1";
  135. X      char recfile[] = RECORD;
  136. X  #else
  137. X!     const char *recfile = RECORD;
  138. X  #endif
  139. X  #if defined(UNIX) || defined(VMS)
  140. X      int sleepct = 100;
  141. X***************
  142. X*** 99,106 ****
  143. X      t0->uid = uid;
  144. X      (void) strncpy(t0->name, plname, NAMSZ);
  145. X      (t0->name)[NAMSZ] = 0;
  146. X!     (void) strncpy(t0->death, killer, DTHSZ);
  147. X!     (t0->death)[DTHSZ] = 0;
  148. X      Strcpy(t0->date, getdate());
  149. X  
  150. X  #ifdef LOGFILE        /* used for debugging (who dies of what, where) */
  151. X--- 118,138 ----
  152. X      t0->uid = uid;
  153. X      (void) strncpy(t0->name, plname, NAMSZ);
  154. X      (t0->name)[NAMSZ] = 0;
  155. X!     (t0->death)[0] = 0;
  156. X!     switch (killer_format) {
  157. X!         default: impossible("bad killer format?");
  158. X!         case KILLED_BY_AN:
  159. X!             Strcat(t0->death, killed_by_prefix[how]),
  160. X!             (void) strncat(t0->death, an(killer), DTHSZ);
  161. X!             break;
  162. X!         case KILLED_BY:
  163. X!             Strcat(t0->death, killed_by_prefix[how]),
  164. X!             (void) strncat(t0->death, killer, DTHSZ);
  165. X!             break;
  166. X!         case NO_KILLER_PREFIX:
  167. X!             (void) strncat(t0->death, killer, DTHSZ);
  168. X!             break;
  169. X!     }
  170. X      Strcpy(t0->date, getdate());
  171. X  
  172. X  #ifdef LOGFILE        /* used for debugging (who dies of what, where) */
  173. X***************
  174. X*** 195,203 ****
  175. X          if (!(rfile = fopen(recfile,"r"))) {
  176. X              short    i;
  177. X      
  178. X!             rfile = openFile(recfile);
  179. X              
  180. X-             t = (term_info *)GetWRefCon(HackWindow);
  181. X              for (i = 0;i < t->maxRow; i++) {
  182. X                  MoveTo(Screen_Border,
  183. X                  t->ascent + (i * t->height) + Screen_Border);
  184. X--- 227,234 ----
  185. X          if (!(rfile = fopen(recfile,"r"))) {
  186. X              short    i;
  187. X      
  188. X!             rfile = openFile(recfile,"r");
  189. X              
  190. X              for (i = 0;i < t->maxRow; i++) {
  191. X                  MoveTo(Screen_Border,
  192. X                  t->ascent + (i * t->height) + Screen_Border);
  193. X***************
  194. X*** 226,251 ****
  195. X      tprev = 0;
  196. X      /* rank0: -1 undefined, 0 not_on_list, n n_th on list */
  197. X      for(rank = 1; ; ) {
  198. X! #ifdef OLD_TOS
  199. X!         char k1[2],k2[2];
  200. X!         if(fscanf(rfile, "%6s %d %d %d %d %d %ld %1s%1s %s %s]",
  201. X  #else
  202. X          if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  203. X! #endif
  204. X          t1->date, &t1->uid,
  205. X          &t1->level, &t1->maxlvl,
  206. X          &t1->hp, &t1->maxhp, &t1->points,
  207. X- #ifdef OLD_TOS
  208. X-         k1, k2,
  209. X- #else
  210. X          &t1->plchar, &t1->sex,
  211. X! #endif
  212. X          t1->name, t1->death) != 11 || t1->points < POINTSMIN)
  213. X              t1->points = 0;
  214. X! 
  215. X! #ifdef OLD_TOS
  216. X!         t1->plchar=k1[0];
  217. X!         t1->sex=k2[0];
  218. X  #endif
  219. X          if(rank0 < 0 && t1->points < t0->points) {
  220. X          rank0 = rank++;
  221. X--- 257,279 ----
  222. X      tprev = 0;
  223. X      /* rank0: -1 undefined, 0 not_on_list, n n_th on list */
  224. X      for(rank = 1; ; ) {
  225. X! #ifdef LATTICE
  226. X!         if(fscanf(rfile,"%6s %d %d %d %d %d %ld%*c%c%c %s %s",
  227. X  #else
  228. X          if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  229. X! #endif /* LATTICE */
  230. X          t1->date, &t1->uid,
  231. X          &t1->level, &t1->maxlvl,
  232. X          &t1->hp, &t1->maxhp, &t1->points,
  233. X          &t1->plchar, &t1->sex,
  234. X! #ifdef LATTICE    /* return value is broken also, sigh */
  235. X!         t1->name, t1->death) <1    || t1->points < POINTSMIN)
  236. X! #else
  237. X          t1->name, t1->death) != 11 || t1->points < POINTSMIN)
  238. X+ #endif
  239. X              t1->points = 0;
  240. X! #ifdef LATTICE
  241. X!         lattice_unmung_line(t1->death);
  242. X  #endif
  243. X          if(rank0 < 0 && t1->points < t0->points) {
  244. X          rank0 = rank++;
  245. X***************
  246. X*** 314,324 ****
  247. X--- 342,360 ----
  248. X      if(!done_stopprint) outheader();
  249. X      t1 = tt_head;
  250. X      for(rank = 1; t1->points != 0; rank++, t1 = t1->tt_next) {
  251. X+ #ifdef LATTICE
  252. X+       lattice_mung_line(t1->death);
  253. X+       if(flg) (void) fprintf(rfile,"%6s %d %d %d %d %d %ld %c%c %s %s\n",
  254. X+ #else
  255. X        if(flg) (void) fprintf(rfile,"%6s %d %d %d %d %d %ld %c%c %s,%s\n",
  256. X+ #endif
  257. X          t1->date, t1->uid,
  258. X          t1->level, t1->maxlvl,
  259. X          t1->hp, t1->maxhp, t1->points,
  260. X          t1->plchar, t1->sex, t1->name, t1->death);
  261. X+ #ifdef LATTICE
  262. X+       lattice_unmung_line(t1->death);
  263. X+ #endif
  264. X        if(done_stopprint) continue;
  265. X        if(rank > flags.end_top &&
  266. X          (rank < rank0-flags.end_around || rank > rank0+flags.end_around)
  267. X***************
  268. X*** 385,399 ****
  269. X  register struct toptenentry *t1;
  270. X  register int rank, so;
  271. X  {
  272. X!     register boolean quit = FALSE, iskilled = FALSE, starv = FALSE,
  273. X!         isstoned = FALSE;
  274. X!     char linebuf[BUFSZ];
  275. X!     linebuf[0] = 0;
  276. X      if(rank) Sprintf(eos(linebuf), " %2d", rank);
  277. X!         else Strcat(linebuf, "   ");
  278. X!     Sprintf(eos(linebuf), " %7ld  %.10s", t1->points, t1->name);
  279. X      Sprintf(eos(linebuf), "-%c ", t1->plchar);
  280. X      if(!strncmp("escaped", t1->death, 7)) {
  281. X        if(!strcmp(" (with the Amulet)", t1->death+7))
  282. X          Strcat(linebuf, "escaped the dungeon with the Amulet");
  283. X        else
  284. X--- 421,437 ----
  285. X  register struct toptenentry *t1;
  286. X  register int rank, so;
  287. X  {
  288. X!     register boolean second_line = TRUE;
  289. X!     char linebuf[BUFSZ], linebuf2[BUFSZ];
  290. X! 
  291. X!     linebuf[0] = linebuf2[0] = 0;
  292. X      if(rank) Sprintf(eos(linebuf), " %2d", rank);
  293. X!     else Strcat(linebuf, "   ");
  294. X! 
  295. X!     Sprintf(eos(linebuf), " %10ld  %.10s", t1->points, t1->name);
  296. X      Sprintf(eos(linebuf), "-%c ", t1->plchar);
  297. X      if(!strncmp("escaped", t1->death, 7)) {
  298. X+       second_line = FALSE;
  299. X        if(!strcmp(" (with the Amulet)", t1->death+7))
  300. X          Strcat(linebuf, "escaped the dungeon with the Amulet");
  301. X        else
  302. X***************
  303. X*** 404,450 ****
  304. X         Strcat(linebuf, "ascended to demigod");
  305. X         if (t1->sex == 'F') Strcat(linebuf, "dess");
  306. X         Strcat(linebuf, "-hood");
  307. X  #endif
  308. X      } else {
  309. X        if(!strncmp(t1->death,"quit",4)) {
  310. X-         quit = TRUE;
  311. X          Strcat(linebuf, "quit");
  312. X!       } else if(!strcmp(t1->death,"choked")) {
  313. X!         Sprintf(eos(linebuf), "choked on %s food",
  314. X!             (t1->sex == 'F') ? "her" : "his");
  315. X        } else if(!strncmp(t1->death,"starv",5)) {
  316. X          Strcat(linebuf, "starved to death");
  317. X!         starv = TRUE;
  318. X!       } else if(!strcmp(t1->death,"poisoned")) {
  319. X          Strcat(linebuf, "was poisoned");
  320. X!       } else if(!strcmp(t1->death,"crushed")) {
  321. X          Strcat(linebuf, "was crushed to death");
  322. X!       } else if(!strncmp(t1->death, "turned to stone by ",19)) {
  323. X!         Strcat(linebuf, "was petrified");
  324. X!         isstoned = TRUE;
  325. X!       } else {
  326. X!         Strcat(linebuf, "was killed");
  327. X!         iskilled = TRUE;
  328. X!       }
  329. X  #ifdef ENDLEVEL
  330. X        if (t1->level == ENDLEVEL)
  331. X          Strcat(linebuf, " in the endgame");
  332. X        else
  333. X  #endif
  334. X!         Sprintf(eos(linebuf), " on%s level %d",
  335. X!           (iskilled || isstoned || starv) ? "" : " dungeon", t1->level);
  336. X        if(t1->maxlvl != t1->level)
  337. X          Sprintf(eos(linebuf), " [max %d]", t1->maxlvl);
  338. X!       if(quit && t1->death[4]) Strcat(linebuf, t1->death + 4);
  339. X      }
  340. X-     if(iskilled) Sprintf(eos(linebuf), " by %s",
  341. X-       (!strncmp(t1->death, "trick", 5) || !strncmp(t1->death, "the ", 4)
  342. X-        || !strncmp(t1->death, "Mr. ", 4) || !strncmp(t1->death, "Ms. ", 4)
  343. X-        || !strcmp(t1->death, "contaminated water")
  344. X-        || (!strncmp(eos(t1->death)-4,"tion",4) && *(eos(t1->death)-5)!='o')
  345. X-        ) ? t1->death : an(t1->death));
  346. X-     if (isstoned) Sprintf(eos(linebuf), " by %s", an(t1->death + 19));
  347. X      Strcat(linebuf, ".");
  348. X      if(t1->maxhp) {
  349. X        register char *bp = eos(linebuf);
  350. X        char hpbuf[10];
  351. X--- 442,480 ----
  352. X         Strcat(linebuf, "ascended to demigod");
  353. X         if (t1->sex == 'F') Strcat(linebuf, "dess");
  354. X         Strcat(linebuf, "-hood");
  355. X+        second_line = FALSE;
  356. X  #endif
  357. X      } else {
  358. X        if(!strncmp(t1->death,"quit",4)) {
  359. X          Strcat(linebuf, "quit");
  360. X!         second_line = FALSE;
  361. X        } else if(!strncmp(t1->death,"starv",5)) {
  362. X          Strcat(linebuf, "starved to death");
  363. X!         second_line = FALSE;
  364. X!       } else if(!strncmp(t1->death,"choked",6)) {
  365. X!         Sprintf(eos(linebuf), "choked on h%s food",
  366. X!             (t1->sex == 'F') ? "er" : "is");
  367. X!       } else if(!strncmp(t1->death,"poisoned",8)) {
  368. X          Strcat(linebuf, "was poisoned");
  369. X!       } else if(!strncmp(t1->death,"crushed",7)) {
  370. X          Strcat(linebuf, "was crushed to death");
  371. X!       } else if(!strncmp(t1->death, "petrified by ",13)) {
  372. X!         Strcat(linebuf, "turned to stone");
  373. X!       } else Strcat(linebuf, "died");
  374. X  #ifdef ENDLEVEL
  375. X        if (t1->level == ENDLEVEL)
  376. X          Strcat(linebuf, " in the endgame");
  377. X        else
  378. X  #endif
  379. X!         Sprintf(eos(linebuf), " on dungeon level %d", t1->level);
  380. X        if(t1->maxlvl != t1->level)
  381. X          Sprintf(eos(linebuf), " [max %d]", t1->maxlvl);
  382. X!     /* kuldge for "quit while already on Charon's boat" */
  383. X!       if(!strncmp(t1->death, "quit ", 5))
  384. X!         Strcat(linebuf, t1->death + 4);
  385. X      }
  386. X      Strcat(linebuf, ".");
  387. X+ 
  388. X      if(t1->maxhp) {
  389. X        register char *bp = eos(linebuf);
  390. X        char hpbuf[10];
  391. X***************
  392. X*** 468,491 ****
  393. X          else Sprintf(eos(bp), " [%d]", t1->maxhp);
  394. X        }
  395. X      }
  396. X!     if(so == 0) (void) puts(linebuf);
  397. X!     else if(so > 0) {
  398. X        register char *bp = eos(linebuf);
  399. X        if(so >= COLNO) so = COLNO-1;
  400. X        while(bp < linebuf + so) *bp++ = ' ';
  401. X        *bp = 0;
  402. X        standoutbeg();
  403. X! #ifdef MACOS
  404. X!       puts(linebuf);
  405. X! #else
  406. X!       (void) fputs(linebuf,stdout);
  407. X! #endif
  408. X        standoutend();
  409. X! #ifndef MACOS
  410. X!       (void) putchar('\n');
  411. X! #endif
  412. X      }
  413. X!     return(strlen(linebuf));
  414. X  }
  415. X  
  416. X  static char *
  417. X--- 498,531 ----
  418. X          else Sprintf(eos(bp), " [%d]", t1->maxhp);
  419. X        }
  420. X      }
  421. X! 
  422. X! /*    Line 2 now contains the killer name */
  423. X! 
  424. X!     /* Quit, starved, ascended, and escaped contain no second line */
  425. X!     if (second_line) {
  426. X!         Strcpy(linebuf2, t1->death);
  427. X!         *linebuf2 = toupper(*linebuf2);
  428. X!         Strcat(linebuf2, ".");
  429. X!     }
  430. X! 
  431. X!     if(so == 0) {
  432. X!       (void) puts(linebuf);
  433. X!       if (second_line)
  434. X!         (void) Printf("                %s\n", linebuf2);
  435. X!     } else if(so > 0) {
  436. X        register char *bp = eos(linebuf);
  437. X        if(so >= COLNO) so = COLNO-1;
  438. X        while(bp < linebuf + so) *bp++ = ' ';
  439. X        *bp = 0;
  440. X        standoutbeg();
  441. X!       (void) puts(linebuf);
  442. X!       if(second_line)
  443. X!         (void) Printf("                %s", linebuf2);
  444. X        standoutend();
  445. X!       if(second_line)
  446. X!         (void) putchar('\n');
  447. X      }
  448. X!     return(strlen(linebuf)+strlen(linebuf2));
  449. X  }
  450. X  
  451. X  static char *
  452. X***************
  453. X*** 499,505 ****
  454. X      return(buf);
  455. X  }
  456. X  
  457. X! static char *
  458. X  ordin(n)
  459. X  int n; {
  460. X      register int dd = n%10;
  461. X--- 539,545 ----
  462. X      return(buf);
  463. X  }
  464. X  
  465. X! static const char *
  466. X  ordin(n)
  467. X  int n; {
  468. X      register int dd = n%10;
  469. X***************
  470. X*** 512,525 ****
  471. X             (dd==1) ? "st" : (dd==2) ? "nd" : "rd");
  472. X  }
  473. X  
  474. X- char *
  475. X- eos(s)
  476. X- register char *s;
  477. X- {
  478. X-     while(*s) s++;
  479. X-     return(s);
  480. X- }
  481. X- 
  482. X  /*
  483. X   * Called with args from main if argc >= 0. In this case, list scores as
  484. X   * requested. Otherwise, find scores for the current player (and list them
  485. X--- 552,557 ----
  486. X***************
  487. X*** 530,540 ****
  488. X  int argc;
  489. X  char **argv;
  490. X  {
  491. X!     char **players;
  492. X      int playerct;
  493. X      int rank;
  494. X      register struct toptenentry *t1, *t2;
  495. X!     char *recfile = RECORD;
  496. X      FILE *rfile;
  497. X      register int flg = 0, i;
  498. X  #ifdef nonsense
  499. X--- 562,572 ----
  500. X  int argc;
  501. X  char **argv;
  502. X  {
  503. X!     const char **players;
  504. X      int playerct;
  505. X      int rank;
  506. X      register struct toptenentry *t1, *t2;
  507. X!     const char *recfile = RECORD;
  508. X      FILE *rfile;
  509. X      register int flg = 0, i;
  510. X  #ifdef nonsense
  511. X***************
  512. X*** 546,556 ****
  513. X  #ifdef PERS_IS_UID
  514. X      int uid = -1;
  515. X  #else
  516. X!     char *player0;
  517. X  #endif
  518. X  #ifdef MACOS
  519. X      if(!(rfile = fopen(recfile,"r")))
  520. X!         rfile = openFile(recfile);
  521. X      if (!rfile) {
  522. X  #else
  523. X      if(!(rfile = fopen(recfile,"r"))){
  524. X--- 578,588 ----
  525. X  #ifdef PERS_IS_UID
  526. X      int uid = -1;
  527. X  #else
  528. X!     const char *player0;
  529. X  #endif
  530. X  #ifdef MACOS
  531. X      if(!(rfile = fopen(recfile,"r")))
  532. X!         rfile = openFile(recfile,"r");
  533. X      if (!rfile) {
  534. X  #else
  535. X      if(!(rfile = fopen(recfile,"r"))){
  536. X***************
  537. X*** 581,612 ****
  538. X  #endif
  539. X      } else {
  540. X          playerct = --argc;
  541. X!         players = ++argv;
  542. X      }
  543. X      if(outflg) (void) putchar('\n');
  544. X  
  545. X      t1 = tt_head = newttentry();
  546. X      for(rank = 1; ; rank++) {
  547. X! #ifdef OLD_TOS
  548. X!       char k1[2], k2[2];
  549. X!       if(fscanf(rfile, "%6s %d %d %d %d %d %ld %1s%1s %s %s]",
  550. X  #else
  551. X        if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  552. X! #endif
  553. X          t1->date, &t1->uid,
  554. X          &t1->level, &t1->maxlvl,
  555. X          &t1->hp, &t1->maxhp, &t1->points,
  556. X- #ifdef OLD_TOS
  557. X-         k1, k2,
  558. X- #else
  559. X          &t1->plchar, &t1->sex,
  560. X! #endif
  561. X          t1->name, t1->death) != 11)
  562. X              t1->points = 0;
  563. X        if(t1->points == 0) break;
  564. X! #ifdef OLD_TOS
  565. X!       t1->plchar=k1[0];
  566. X!       t1->sex=k2[0];
  567. X  #endif
  568. X  #ifdef PERS_IS_UID
  569. X        if(!playerct && t1->uid == uid)
  570. X--- 613,642 ----
  571. X  #endif
  572. X      } else {
  573. X          playerct = --argc;
  574. X!         players = (const char **)++argv;
  575. X      }
  576. X      if(outflg) (void) putchar('\n');
  577. X  
  578. X      t1 = tt_head = newttentry();
  579. X      for(rank = 1; ; rank++) {
  580. X! #ifdef LATTICE
  581. X!       if(fscanf(rfile, "%6s %d %d %d %d %d %ld%*c%c%c %s %s",
  582. X  #else
  583. X        if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  584. X! #endif /* LATTICE */
  585. X          t1->date, &t1->uid,
  586. X          &t1->level, &t1->maxlvl,
  587. X          &t1->hp, &t1->maxhp, &t1->points,
  588. X          &t1->plchar, &t1->sex,
  589. X! #ifdef LATTICE
  590. X!         t1->name, t1->death)<1)
  591. X! #else
  592. X          t1->name, t1->death) != 11)
  593. X+ #endif
  594. X              t1->points = 0;
  595. X        if(t1->points == 0) break;
  596. X! #ifdef LATTICE
  597. X!        lattice_unmung_line(t1->death);
  598. X  #endif
  599. X  #ifdef PERS_IS_UID
  600. X        if(!playerct && t1->uid == uid)
  601. X***************
  602. X*** 655,661 ****
  603. X--- 685,693 ----
  604. X                 players[i][1] == t1->plchar &&
  605. X                 players[i][2] == 0) ||
  606. X                (digit(players[i][0]) && rank <= atoi(players[i]))){
  607. X+ #ifdef PERS_IS_UID
  608. X              outwithit:
  609. X+ #endif
  610. X                  if(outflg)
  611. X                      (void) outentry(rank, t1, 0);
  612. X  #ifdef nonsense
  613. X***************
  614. X*** 721,727 ****
  615. X      int rank;
  616. X      register int i;
  617. X      register struct toptenentry *tt;
  618. X!     char *recfile = RECORD;
  619. X      FILE *rfile;
  620. X  
  621. X      if (!otmp) return((struct obj *) 0);
  622. X--- 753,759 ----
  623. X      int rank;
  624. X      register int i;
  625. X      register struct toptenentry *tt;
  626. X!     const char *recfile = RECORD;
  627. X      FILE *rfile;
  628. X  
  629. X      if (!otmp) return((struct obj *) 0);
  630. X***************
  631. X*** 728,734 ****
  632. X  
  633. X  #ifdef MACOS
  634. X      if(!(rfile = fopen(recfile,"r")))
  635. X!         rfile = openFile(recfile);
  636. X      if (!rfile) {
  637. X  #else
  638. X      if(!(rfile = fopen(recfile,"r"))){
  639. X--- 760,766 ----
  640. X  
  641. X  #ifdef MACOS
  642. X      if(!(rfile = fopen(recfile,"r")))
  643. X!         rfile = openFile(recfile, "r");
  644. X      if (!rfile) {
  645. X  #else
  646. X      if(!(rfile = fopen(recfile,"r"))){
  647. X***************
  648. X*** 740,748 ****
  649. X      rank = rnd(10);
  650. X  pickentry:
  651. X      for(i = rank; i; i--) {
  652. X! #ifdef OLD_TOS
  653. X!       char k1[2], k2[2];
  654. X!       if(fscanf(rfile, "%6s %d %d %d %d %d %ld %1s%1s %s %s]",
  655. X  #else
  656. X        if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  657. X  #endif
  658. X--- 772,779 ----
  659. X      rank = rnd(10);
  660. X  pickentry:
  661. X      for(i = rank; i; i--) {
  662. X! #ifdef LATTICE
  663. X!       if(fscanf(rfile, "%6s %d %d %d %d %d %ld%*c%c%c %s %s",
  664. X  #else
  665. X        if(fscanf(rfile, "%6s %d %d %d %d %d %ld %c%c %[^,],%[^\n]",
  666. X  #endif
  667. X***************
  668. X*** 749,768 ****
  669. X          tt->date, &tt->uid,
  670. X          &tt->level, &tt->maxlvl,
  671. X          &tt->hp, &tt->maxhp, &tt->points,
  672. X- #ifdef OLD_TOS
  673. X-         k1, k2,
  674. X- #else
  675. X          &tt->plchar, &tt->sex,
  676. X! #endif
  677. X          tt->name, tt->death) != 11)
  678. X              tt->points = 0;
  679. X        if(tt->points == 0) break;
  680. X! #ifdef OLD_TOS
  681. X!       tt->plchar=k1[0];
  682. X!       tt->sex=k2[0];
  683. X  #endif
  684. X      }
  685. X-     (void) fclose(rfile);
  686. X  
  687. X      if(tt->points == 0) {
  688. X          if(rank > 1) {
  689. X--- 780,797 ----
  690. X          tt->date, &tt->uid,
  691. X          &tt->level, &tt->maxlvl,
  692. X          &tt->hp, &tt->maxhp, &tt->points,
  693. X          &tt->plchar, &tt->sex,
  694. X! #ifdef LATTICE
  695. X!         tt->name, tt->death) <1)
  696. X! #else
  697. X          tt->name, tt->death) != 11)
  698. X+ #endif
  699. X              tt->points = 0;
  700. X        if(tt->points == 0) break;
  701. X! #ifdef LATTICE
  702. X!       lattice_unmung_line(tt->death);
  703. X  #endif
  704. X      }
  705. X  
  706. X      if(tt->points == 0) {
  707. X          if(rank > 1) {
  708. X***************
  709. X*** 770,776 ****
  710. X              goto pickentry;
  711. X          }
  712. X          free((genericptr_t) tt);
  713. X!         return((struct obj *) 0);
  714. X      } else {
  715. X          otmp->corpsenm = classmon(tt->plchar, (tt->sex == 'F'));
  716. X          otmp->owt = weight(otmp);
  717. X--- 799,805 ----
  718. X              goto pickentry;
  719. X          }
  720. X          free((genericptr_t) tt);
  721. X!         otmp = (struct obj *) 0;
  722. X      } else {
  723. X          otmp->corpsenm = classmon(tt->plchar, (tt->sex == 'F'));
  724. X          otmp->owt = weight(otmp);
  725. X***************
  726. X*** 779,784 ****
  727. X          fobj = otmp;
  728. X          level.objects[otmp->ox][otmp->oy] = otmp;
  729. X          free((genericptr_t) tt);
  730. X-         return otmp;
  731. X      }
  732. X  }
  733. X--- 808,830 ----
  734. X          fobj = otmp;
  735. X          level.objects[otmp->ox][otmp->oy] = otmp;
  736. X          free((genericptr_t) tt);
  737. X      }
  738. X+ 
  739. X+     (void) fclose(rfile);
  740. X+     return otmp;
  741. X  }
  742. X+ 
  743. X+ #ifdef LATTICE
  744. X+ /* Lattice scanf isn't up to reading the scorefile.  What */
  745. X+ /* follows deals with that; I admit it's ugly. (KL) */
  746. X+ static void lattice_mung_line(p)
  747. X+     char *p;
  748. X+     {
  749. X+     while(p=strchr(p,' '))*p='|';
  750. X+ }
  751. X+ static void lattice_unmung_line(p)
  752. X+     char *p;
  753. X+     {
  754. X+     while(p=strchr(p,'|'))*p=' ';
  755. X+ }
  756. X+ #endif
  757. X*** /dev/null    Tue Feb 20 01:25:09 1990
  758. X--- mac/NH3.rsrc.hqx    Mon Feb 19 18:11:28 1990
  759. X***************
  760. X*** 0
  761. X
  762. X--- 1,311 -----
  763. X+ (This file must be converted with BinHex 4.0)
  764. X+ :#%j)-bjbFh*M!!!!!!!!!!!!)!!!!!!!!!!jaZRe!!!!!!%!!!!ddJ!!-p)!!!6
  765. X+ d"!46DfP`!!!!!!#$!!`!P3%PL!K6BACP)'&c1J!!!!!)6NJc,R*cFQ-c!J!!!!!
  766. X+ !!!!!!!!!)!!!!!!!!!!!!!!!!!!!!!!!!!!J!!!!!!!!!!!!!!!!!!!!!!!!!!!
  767. X+ !!!#L"M0f!!!!!!!!1FB!!!!!!-S!$`$H!'S%#&0KGQ8J3@aX!!!!!!$+!0!!hJ%
  768. X+ U"!C$B@jMC@`!!!!!!,B!F`$)!-S%"d0[ERCPFR5!!!!!!!$+!(-!hJ$+"!Y$Efj
  769. X+ fCA*d)%&XE!!!!!"b!!%!!!!!!&8!%J"T!$m%!Np,!!!!!!!%!%J!C`%$L&&6Eh*
  770. X+ b!!!#6!*-!#!!H3!Z!C-4!D!!JU!!MJ%!#J!J!(%#d!*!Q!!N!!!!#!!1!5J!!!!
  771. X+ )!!i")J!J!(N!,J'6!!%K$rKq!!"r2i!!!H!!IJ!m!"lq!!B"i!!!2`2`qJ!#!H!
  772. X+ !)J8i'!!!(!lq!!EJ!1F!j`!rr3!)i!!!$`2!!!!Fr!!"i!!P"6`B!"`F$[i!"Z!
  773. X+ !ii$R!(Iq!!Y`i!!!$iI!!!!F!!Iq!!(J!#3&2KJ!("`1rJ!'i!!$JF1!F2i!"R$
  774. X+ J!!!2Km$p!!!(rJ!"i!!N"6mB!"`F$[i!"Z!!!i($J($q!!C`i!!!$iI!r3!!"ri
  775. X+ !!H!!*5-h'$ir(!i(JI$[J!F"`i(mIMh!r2m(`!h0`2!q22q2aq(mr`!P)c1BGa`
  776. X+ IrKc$R1B!2J($J($R(m"`pilJ$Fh$Q(1FHmF1FjchJ#8M-pMMR"`1(1FFl!!(!F1
  777. X+ !FF1H!($MR(!0cF1Fijaaaa`l$11!*5-af11F(!i!j`$i!!1"`i"a`j`!F11FF!c
  778. X+ j`"cJ((((($[!ii!P)c$irj`F$JIR!2J!!i($J(($R!"`ijr`$2R!r1!FFFFF1IM
  779. X+ MJ#8M-2MJ("`1(1F!r!!$JF1!FF1F!($MR!!-qF1Fi"aaaa`i211!*5-`H1'F(!i
  780. X+ ij`cZ!F1!j`"a`j`!F11F-!aaaacKR(((($X-ii!P)c!iFjfF$MRMR1F"aacR!($
  781. X+ R(!"fiij`$(((2(1FFFGZFjcMJ#8Mr"Jr$hmrRr(jrm$q($`!q(iq!$hhaq!rGr2
  782. X+ q2cllimIMqII!S!#2S!#$r`!!!#FQ6Q9d5'&MDb"@CA*cD@pZ)$-Z-'NJCQpb)(4
  783. X+ SC5"0B@0TER4[FfJ!!!"-!'F!!!!!!!!!!2rrrrX%4@4TG!99EQ4[)!"D!!!",3!
  784. X+ !!!!%3h9d)!"B!!!&3fp`H5!!3`!!"P"KFh4P)!"@!!!&3faPBA)!!!!!!!!!!+S
  785. X+ !D!!!!!!!!!!!rrrrr`P*ERCPER4[FRN-4'mJD@jfC@jdEh*j!!!!!!K3BANJBQP
  786. X+ XE!!!!!!,4(*[F#"[BQTPBh3!!!!!&%4bEh!JFf9fCA*KE#"[BQTPBh4c!!!!!!j
  787. X+ 3D@0V)(9`)'pLDQ9MG!!!!!!09'pRCfaP)("TBfYeF!!!!!!25@4PER4TCRNJEf*
  788. X+ UC@0d!!!!!!a1B@eP)'e[ER0dCA)!!!!!!!!!!*-!D3!!!!!!!!!!rrrrr`C"Bh4
  789. X+ TEfi33A"`E(N[GA0P)'pLDQ9MG!!!!!!+4@&d)'pLDQ9MG!!!!!!-8A9KCQBJF'p
  790. X+ dD@pZ!!!!!""5C@&N)(0MFQpXE#pLEfpV!!!!!"*8D(*[GbpcD'p[G#"hC@&`Efi
  791. X+ !!!!!#&TKF#"hB@jN!!!!!!T$BA0d)(0`C@aX!!!!!!!!!!$"!'S!!!!!!!!!!2r
  792. X+ rrrm%8(*PF!aAD@9XC#"hC@&`Efi!!!!!#e"eG#"[EL"bD@jR!!!!!!Y5C@e[GQ8
  793. X+ JFQPZC`!!!!!-8Q9YEhCP)'&bE@pb!!!!!!TAC@&b)'&bE@pb!!!!!!j$GA*bC@j
  794. X+ d)(GPBA"[EJ!!!!!03h9bFQ9ZG#"KFQe[FJ!!!!!03h9bFQ9ZG#"bD@jRF`!!!!!
  795. X+ 13h9bFQ9ZG#"KEA9XCA3!!!!!$80eFR*PER3JG'p[E(-!!!!!!!!!!*J!D`!!!!!
  796. X+ !!!!!rrrrr`40EhCP#8p`C@iJC'p[FJ!!!!!+3fa[Ff8JC'p[FJ!!!!!*5fPMDb"
  797. X+ NEfpb!!!!!!C6C@&bBfJ!!!!!$%G[)(9`)(0dB@PbF`!!!!!14fmJC'phEL"cG'&
  798. X+ TFR-!!!!!#&4PE'9`Eh*d!!!!!!4AB@Pd!!!!!!p&EQGbBACP)'ePFh0KCf8!!!!
  799. X+ !!!!!!1S!E!!!!!!!!!!!rrrrr`K&H(4PEQ4PC!4$D'&d!!!!!!T%DA!JEf*UC@0
  800. X+ d!!!!!""'Eh*MC5"MD'9cG#"XEf0V!!!!!!4+G@e`!!!!!!K-Efpd)'*[H!!!!!!
  801. X+ 69A0P)'e[ER0dCA)JB@*TE'PdH3!!!!!,6Q&YC5"[BQTPBh3!!!!!$dpQCQ9b)(0
  802. X+ KBh*TCQPMC3!!!!!%8(*KH3!!!!!)8R9L)'aKEA!!!!!!#&0TG#"NEhGZ!!!!!!Y
  803. X+ 8GA*Z)(9ZC'9KC!!!!!!09@jdFQ&`)'pLDQ9MG!!!!!!*9fP`C5"QB@0P!!!!!!!
  804. X+ !!!'+!-J!JJ!!8Q9KE'aj)(&eDA3J2`!!!!4!!!-!!!$Frri!!!3m!!-!!!$drrm
  805. X+ !!!!!!!-!!!$qrrm!!!!!!!-!!!%+rrm!!!!!!!-!!!&-rrm!!!3i!!-!!!(@rrd
  806. X+ !!!!!!!-!!!*Drrd!!!!!!!-!!!+Hrri!!!-%!!-!!!6#rrm!!!3d!!-!!!6Drri
  807. X+ !!!4!!!-!!!6brri!!!3`!!-!!!8'rri!!!-%!!-!!!@Drri!!!-%!!-!!!DJrrl
  808. X+ rrrrm!!-!!!EXrri!!!3X!!-!!!G`rri!!!3X!!-!!!I3rri!!!3X!!-!!!Jdrri
  809. X+ !!!3S!!-!!!K!rri!!!3S!!-!!!Kbrri!!&PPF`!!!!QHrri!!!3m!!!!!!0brri
  810. X+ !!!FN!!!!!!0i6Qm!!!FB!!!!!!1'rri!!!FN!!!!!!13!2rq!!!('!!!!!!$Q[r
  811. X+ q!!!(*!!!!!!$T2rq!!!($!!!!!!$V[rq!!!!$!!!!!!$Z[rq!!!(-!!!!!!$d[r
  812. X+ q!!!(*!!!!!!$h!!"!!)!!!'+!2!!C!!!4'mJH@pe)(GKER3JG'mJD'&fC5"jEh9
  813. X+ b)("[Ff9cFfP[ER-JD@4PER4TCQPPC#!r!!!CF!!!!!!!!#@i!!!!!!!!)i)!!!!
  814. X+ !!!!V#J!!!!!!!!Zi!!!!!!!!!8`!!!!!!!!"8MXH!$BJY!Tq!#MdXPBL!di!+25
  815. X+ b9L)I8J!Sp,*@)J!!!!!!!!!!)p!!!!!!!!!CC!!!!!!!!!*X!!!!!!!!!83!!!!
  816. X+ !!!!KXJ!!!!!!!"pQ!!!!!!!!(QB!!!!!!!!HM!!!!!!!!#2S!!!!!!!!(CS!!!!
  817. X+ !!!!2BJ!!!!!2(J&@!#MdXPBL"F`!+25b9L)('!!Sp,)!)LH`!#MdXPPPF`!!+25
  818. X+ b9L)3"J!!!!!!!!rS!!!!!!!!"TJ!!!!!6Qm!qJ!!!!!!!!XU!!!!!!!!!*i!!!!
  819. X+ !!!!!!!!!!!"4G@Pd!!!!!!!!)Ni!!!!!!!!@QJ!!!!!!!!Z'!!!!!!!!%$`!!!!
  820. X+ !!!!HJ!!!!!!!!",X!!!!!!!!'Y)!!!!!!!%!!`!!!3!!!!!!I`!2i&+!1VKHJ&9
  821. X+ 83)$rUPk"!0C5JR`U8S5S&Rq*m"S!%!#5!$rKBJ"9FN)!UUR#!Ip9`J-"VX)%I&6
  822. X+ ##%3SJJJ!-!B2rq!+#4%J$!S!S#J-lQ!3#N5JS!Nj)%!+JU+!$%4K!!UUUJ!)!$`
  823. X+ !$UVS!!S!X!!2rq!!!!!!!2q!$q$r`$rirm"rr2r!rrlr`Irrrm2rrrr(rrrrcrr
  824. X+ rrprrrrrrrrm!Irrr!2rrr`(rrrm$rrrr"rrrr`rrrrmIrrrr(rrrrarrrrmIrrr
  825. X+ q(rrrr"rrrrJIrrr`(rrri"rrrm!Irrq!(rrr!"rrrJ!Irr`!(rri!"rrm!!Irq!
  826. X+ !!!!"!)!!!!&!!!!#)!!!""!!!!J)!!!)"!!!#!)!!(J#!!$)!J!"5!2rrNJ#!!*
  827. X+ )!J!#5!)2mNJ##"*)!JJ55!))%NJ##"*)!JK55!))%NJ##"*)!JJ55!))%NJ$rrj
  828. X+ )!J!"5!)!!-J#!!"i"!!!#!J!!!J3!!!))!!!"%!!!!+!!!!"rrrrrrrrrrrrrrr
  829. X+ rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr`2rrrmlrrrr1r
  830. X+ rrra2rrrplrrrrUrrrrc[rrrmlrrrr+rrrrb[rrrm$rrrrrrrrrrrrrrrrrrrrrr
  831. X+ rrrrrrrrrrrrrrrrrrrrrrrrrrrm!!!%!!!!!!!!!!!!!!!!!!!&!!"rpArJ3!8!
  832. X+ )&reIk"3"3#J!!!!S(!(!+#)!)#JL!D!S*J1J+#)#S#JL)L)S2J(!+!!!!#J8!!!
  833. X+ S&!!!+"3!!#J8!!!S&###+"3!!#J8!!!S&!!!+"3!!#JArrrS%!!!#"rrrrJ!!!!
  834. X+ !!!!!!!!!!!!!!!!!!!!!!(rrrrjrrrrqIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrr
  835. X+ qIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrr
  836. X+ qIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrrqIrrrrRrrrrjrrrrq!!!!!!!!!3!!!!!
  837. X+ !#!!!)"`!!(!)!!!J2J!!q(m!!I`8!!"32J!!q#IrrkJU!!$)-U48Q#DUP+JUkTM
  838. X+ )-Uk8Q#DU8UJU!!$)-X6NQ#DU5UJUUNV)-Uj1Q#E+5UJU!!$)-rrrQ$i!!2J8!!"
  839. X+ 3I`!"r$i!!2J)!!!J(!!!F!J!!#!!!!!!!!!!!!J!!#!F!!"`2J!!q$i!!2Kr!!(
  840. X+ mri!$rRm!!IarrrrmIrrrr(rrrrarrrrmIrrrr(rrrrarrrrmIrrrr(rrrrarrrr
  841. X+ mIrrrr(rrrrarrrrmIrrrr(rrrrarrrrmIrrrr(m!!IcrJ!2qI`!"r$i!!2Jq!!$
  842. X+ i(!!!F!J!!#!!!!!!!!!!!Mm!!!!!#8pf!")3!&-!83!!!!KTF'4%,%![3`!!!!G
  843. X+ KCA&bG(TD!!!!#RG38P4A+9XpA#J!!!!*Ef-%Fc`q&#j&!!!!"J!!!!!!!!!!!!j
  844. X+ MC'CUE'eZEh"bFh4eG`!!!#3JZXh*ZmLmcXV,ZFbca&`[X1lZlrU`2$jH)Rel)ea
  845. X+ I2$iM)`!!!!!q,Q`!!!"S!'S!!!"`Dfd!!!"TBQTZD'pXH3"VG3!!iq6QkZcYcZr
  846. X+ bmr6epiffa-E#YIDrU+HJk,F!!'KXDQX!!!!2!!!!!J!!J!!'6@pZB@0[!!!!"d&
  847. X+ 38%`!!!!!!!!(8d&@43!"!!!!!!GB8%a5!!)!!!!!"da&9N`!!`!!!!!(3Np143!
  848. X+ %!!!!#BL3!!!!!!$q!!B!!2rh!!B!#`1l!!N!!J!!!$m!!!!!!!!!!!!!!!!!!!!
  849. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!$B!!!!!!!!&%%!!!!
  850. X+ !!#P!!!!`!!!D!!!#'%!&DeL*3!@J+83JJ%!%P8"3&!&#&!!9!"3JMm$rm!(i!!!
  851. X+ !Fi!J!!!!!!!J!!!1B!!!%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  852. X+ !!!!!!!!!!!!!!!!!!!!!F!"3L!)B"!%#J+)!"!))J!!!B!"")K0X!!!#+)!!&IL
  853. X+ *3!@J+83JJ%!%P8"3&!&#&!!9!"3JMm$rm!d)!!!!*%"3![2!!!3J!`!*N!!!e6R
  854. X+ X6#!!"FZF,l[ZF!!1Flc[Iqk2$'%BZmlc[aM'-ImD!J3!%"JK--!!!!!#!!!!!+Q
  855. X+ Zq45K*!T3V9c[JHT4&%8k)*4m3N3PSZa!!NNJ"@YBL8!&S#P%))"!"*9!8"3"3K3
  856. X+ !&3!8))r!rr!6!$i!0R4F3!Am)")D)!5!#5$ehpDbNUN!"MaLD%!aL##4M'-B`K'
  857. X+ +$+'maM'-54M&83d0!33!%#!J%%!!!!!#!!!!!+V4q!!!'!!!!#-B!S!!!!"'*)+
  858. X+ L3!!!-c)!!US!!"AiL8!&S#P%))"!"*9!8"3"3K3!&3!8))r!rr!M!")!#DaL)$h
  859. X+ m2j%U*!bi18#9K9,8)A%!#QK#VhJaM9p"l'-)`K#+$5&DaM'-#4M%N45)!(qFph2
  860. X+ p-ReRHICraM@-IUJ38jlh[FjcNQ-B1SjcSaM',ZILjmk0Uc*!!99J"@YBq8(p[qP
  861. X+ m))"!"29rhrIrIjAi&IJ9q)r!rrGP"mMmL+rLlF[m)(c))(0m+Ik9MlP))Dr2LUL
  862. X+ 0)-41L)!LVrd)qp2k$L%Cap(cL4M%LL5)!)aM'+4M0'ZBaMQ#4M9843339'-BaM'
  863. X+ -8Rrr9p'-BaM'0B%m50'1CZb2rKPTN!!9ripq)D%2arrrrrqA%!!3!!"q"rmRrLI
  864. X+ rrrriT3+&&)LXBaV,r,q4+$q)I%!1PB89Y5%K!"-T!r$%NAKI424M#-)4LSdK'-B
  865. X+ 4L%NBe)4%5!#-B4qNBcaV'-B`FNBe*%LS%(IM'-BIrp*M'(k4M'-BaM5(j%M4M')
  866. X+ "#!3KmNeV@2P,rEhi2%!#3!6eprphrhq"q8(p&IK2rr`)S`+*&)KdBah6r#!5'#"
  867. X+ `Id!1P3"@XK)"!")U)LM%N3JJJ)4M'-)4LSbK'-B4M%N9E85%5!#FB4JNBc*V'-B
  868. X+ `#Ne99&#S%53R1Fi3K"*M'&+4M'FiaM@*,NR4R'2r'!4!FNJ9q)P+*D8!!%!#3!5
  869. X+ 8&!&8!8!!)8!P&#"2rr`)S`+6&)JN94"6r$q!##5!1)!!PB!k63`!%'(2h#FiMR8
  870. X+ !"(4mlhi1Mh4r',S1LiML4L6q12a[R[HMic&V&hR`mE5+LrkS$L2DeVA[Hp*M(pl
  871. X+ ZFjVAZFla*%E1E')!i!"`DC9V@)P+*D8!!%!#3!58&!&8!8!!)8!P&#"2rr`(E3+
  872. X+ qjdKcYZ!pr#"rq5!!!)!!p3!3!!!!%#!!!!!!!!%!!!!!!!!!!!!!!!!"!!!!!!!
  873. X+ !)!!!!!!!3#!!!%!J!!!!!%"`!R!!!!#!!!!!!!!!!!!!J!3!"N!!!!!!!!!!!!!
  874. X+ 9q)P+*D8!!%!#3!58&!&8!8!!)8!P&#"2rr`!)!!!"!!!!!!Krq!!#5!!!!!!!!!
  875. X+ !!!!!)!!!!!!!!!)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!$J-!!!%!J!!!!!i!
  876. X+ !"!!!!!%!!!!!!!!!!!!(!!!!!B!!!!!!!!!!!!9V@)P+*D8!!%!#3!58&!&8!8!
  877. X+ !)8!P&#"2rr`!!!!!"!!!!!"!!!!!#-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  878. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  879. X+ !!!%!"!!*!!i!%`!B!"S!(3!J!#8!+J!X!$%!-J!f!$X!23"#!%F!6!"4!&B!@`"
  880. X+ J!'8!CJ"S!'X!F!"c!(J!I3##!)F!M!#4!*B!Q`#J!+8!U!#Y!,)!Y`#m!-%!aJ$
  881. X+ ,!0!!e3$D!0m!j!$T!1i!m`$i!2d!r`%$!38"#!%1!4!"&3%D!4m"*!%T!5d"-J%
  882. X+ h!6J"1`&!!8)"4`&-!9%"9J&E!@!"C3&T!@i"F`&i!Ad"JJ'(!BS"L`'1!C-"N`'
  883. X+ B!Cd"SJ'R!D`"X3'f!EX"`!(&!FS"c3(3!G)"e`(F!H%"jJ(V!I!"p3(k!Im#"!)
  884. X+ *!Ji#%`)B!Kd#)J)R!L`#-3)c!MJ#23*#!NF#5`*2!P3#@3*H!Q3#DJ*V!R!#G3*
  885. X+ k!Rm#K!+&!SN#M3+5!TF#Q`+J!U-#U!+Y!V)#YJ+k!Vd#``,*!X`#dJ,B!YX#h`,
  886. X+ M!ZF#l3,c![F#r3-$!`N$$`-9!aX$(`-L!b8$+3-[!c8$13-m!d)$5!0,!di$9!0
  887. X+ D!em$C30U!fm$G30k!i!$K31+!im$P!1C!jm$T31V!l%$YJ1j!l`$[`2$!mJ$c32
  888. X+ 4!pB$e`2F!q!$j!2R!qd!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!
  889. X+ '!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'"JB#"J%'!!B!"J!'!!B#"J%
  890. X+ '!JB!"J!'!3B!"J)'!3B!"J)'!!B!"J!'!!B!"J!'!!B!"J)'!3B""J!'!3B!"J!
  891. X+ '!!B!"J!'!!B!"J!'!!B!"J%'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!
  892. X+ '!!B!"J)'!3B#"J%'!!B""J!'!!B!"J!'!!B""J!'!!B#"J!'!!B""J!'!!B!"J!
  893. X+ '!!B!"J!'!3B!"J!'!!B!"J!'!!B#"J)'!3B!"J!!!!B!"J!'!!B!"J!'!!B!"J!
  894. X+ '!!B!"J%'!3B""J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!'!!B!"J!
  895. X+ '!JB!"J!'!!B!"J%'!3B!"J!'!!B!"J!'!`B!"J!'!!B!"J!'!`B!"J!'!!B!"J!
  896. X+ '!!B#"J!'!!B!"J!'!!B$"J!'!!B$"J!'!!B$"J)'!JB#"J!'!!B#"J!'!!B!"J!
  897. X+ '!!B!"J)'!`B$"J)'!!B!"J!'!`B!"J!'!!B$"J!'!!B!"J!'!!B!"J!'!!B!"J!
  898. X+ '!!B!"J!'!!B!"J!'!!B!"J!'!3B""J-'!!B!"J!'!3B!"J)'!!B!"J!'!3B!"[r
  899. X+ r!!!,hT!!!!!!!2m!"`!!rrd!"`!2"18!$!!$!!!!3J!!!!!!!!!!!!!!!!!!!!!
  900. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!$J!!!!
  901. X+ !!!!!!!!!!!!'J!!!!!!!9DY@)P!"D!T4#"!#!!L+8!8!8!&""3!!T!!+#"$q!rr
  902. X+ i!!!!!!!!!!!!!!!!!#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  903. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"84!!!!!!!T3!!!-!!!,!!!
  904. X+ !))!!!&Aq)P!"D!T4#"!#!!L+8!8!8!&""3!!T!!+#"$q!rri!!!!!!!!!!!!!m!
  905. X+ !!#!!!!TJ!!!3!!`!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F(!!!!!!!!!
  906. X+ !!!!!!!!!!!!!(!!!!!!'!!!!!%5!!!!!!!!!!!!3!!!!!!!!))!!9DY@)P!"D!T
  907. X+ 4#"!#!!L+8!8!8!&""3!!T!!+#"$q!rri!!!!!!!i!"J!p#!!!#!!!!f3!!$915a
  908. X+ 5)!!#jFiAcIFi!!(!1mlhrZM`aK',[1mlmBaM(mJ5!)%!"!B)6!!!!!!!!!!!!#T
  909. X+ VJ#)!L3%!J+Fli(X!JL!1L!dI%%L%f,h%!#++!!"9rL*3!@J+83J3!J!)LP!&!&!
  910. X+ "338!!+3!#JJ3rJ2rq!li2J!!%FiJ!I`J!#!J!`!j)(hIeV*5U!!$(M%d%"M%##)
  911. X+ J4M'-)4LJbKZ-BaM%NBaM%-J9!%%!"!J)6$!!!!!!J!!!!#Ud9%8S53+85eM'!+5
  912. X+ 844&4L"#SN!#4#@M'*!!NNJ"9UeBL8!&S#P%)%!)!#)T3"3"3!8%&!!#N!!S)%2i
  913. X+ $rrJ45#)!'j)a)!Am)!4-)!5!+8p%e9,5BA%!"43K9#!Ba"!3,dBaM#%)S0)9c'-
  914. X+ B`*'-Ba$%')!"!!3)#!33!!!!!)!!!!!U"%!!!!B!!!!)aJ#J!!!!%BN4q*!!!!!
  915. X+ -aL!!##!!!&Aq)P!"D!T4#"!#!!L+8!8!8!&""3!!T!!+#"$q!rrlF8!3!#3k-4!
  916. X+ &r$mLNL3%J#Rr4)8ae#&a!!8d*THm*dDRb&$(d)`K#+$L%DaM'-#4M&844"!!(qF
  917. X+ ph2p-RhRHICh4M@-IUJ3Ljlh[FjcNQ-B1SjcSaM',N!")ZI1MDXBN!"C+@P@V9Mj
  918. X+ 3IfrkA`J3!J!)qPrprprrIq8rJ+Ii#Rm3rJ2rr**(b2a%4M&i(IdJ)9)J5cJJ$d5
  919. X+ 2Q)JKVm!*9%(iBNM'`!5@rM#2[6qJ`K'FI4miNBa)SN)3!#-BaLNBc4V'-BjLNBe
  920. X+ 9%8N%)aM'-BaM&*M(eIaM'-BaMARr%M4MQEh%rqQDT3"9rq2IL'K$mIrrrrrrLm)
  921. X+ !!%!!!"r!Ira(riMrrrrrr**#K54%4r'1kr`rqM!rX(`J$d5&&93K)3q*P)%3BNL
  922. X+ m*mL@aM#-)4LJiK'-B4L%NBa84%)3!#-B4qNBcKV'-BaFNBe*%LS%)rM'-BIrp*r
  923. X+ q&k4M'-BaM4")%M4M')!)J%%V3Y@V9Mj5rfpq$a!!)J!)qRlrqprrIq!rP!Ip#Rm
  924. X+ )rrrm!h&#L54%4M'0Dr`J*"%J5(iJ$d3!&E+K!3!4&3%3BNL%%"!AaM#-)4LSdK'
  925. X+ -B4L%NBeL5%%3!#-B4JNBc4V'-B`#NBe*&#S%)`M'-B3K"*M'&+4M'-BaM4**%M4
  926. X+ M'2r`J%*r3S"9rL*5L@P!!"!!)J!)LJ+!#P!"3!!%&!"&#JJ)rrrm!"&#N54%4LU
  927. X+ 1kr`r)2%NX(fJ$d5!9V%5!""4&K%8BNL+L##3!%BaM#%BU-S4M'%Ba*&@iNK"%!!
  928. X+ R'-BT'-bDaM'-)T0994JU"'FCcR1-B45BaK@NBaR1-Be55j*dCaL!%3!%#U99UeB
  929. X+ L8SPT3!!3!#)!#)S#J!T3!8!!""3!43S)#2rrr!!43U-Na$SUL#[m)!F3`!!iB!"
  930. X+ %J$T1NJ!3B1IZ%ja(-S!!MdI1pq$SpdIaLk$SZ)iNBNr!N!"r'qFpb2M-@XAHI"a
  931. X+ Y)U,rUJ1DjV@YFjlNQ-IZZjcQYHjc[%N4XjXBJ!i!$`TD!&Aq)P+*D8!!%!!L!!L
  932. X+ +!S!+8!&!!!38!%8+#!Mrrr`!&N+qad)4fh!Grq$i%!!!!#!!I3!3!!`!%#!!!!!
  933. X+ !!!#!!!!!!!!!!!!!!!!!3!!!!!!!F2!!!!!!!"!)!!!3#!!!!!!3(!%!!!!!)!!
  934. X+ !!!!!!!!!!#!"!!%3!!!!!!!!!!!!9DY@)P+*D8!!%!!L!!L+!S!+8!&!!!38!%8
  935. X+ +#!Mrrr`!%!!!"!!3!!!4q!!!%!!!!!!!!!!!!!!!)!!!!!!!!!%!!!!!!!!!!!!
  936. X+ !!!!!)!!!!!!!!!!!!!!!!4!)!!!3#!!!!!%3!!%!!!!!)!!!!!!!!!!!!#!!!!(
  937. X+ J!!!!!!!!!!!!!&Aq)P+*D8!!%!!L!!L+!S!+8!&!!!38!%8+#!Mrrr`!!!!!"!!
  938. X+ i!!!3!!!!%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  939. X+ !!!!!!1!`!!!!!!!!!!$J!!)!!!!!3!!!!!!!!!!!!F!!!!!!!!!!!!!!!!!!9DY
  940. X+ @)P+*D8!!%!!L!!L+!S!+8!&!!!38!%8+#!Mrrr`!!!!!!!!!!!!!!!!!%!!!!!!
  941. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  942. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%!"!!*!!i!%`!C!"S!(3!J!#8!+J!X!$%
  943. X+ !-J!h!$`!2J"$!%J!63"5!&F!A!"K!'B!C`"T!'d!FJ"f!(X!J3#'!)X!N!!!P3#
  944. X+ D!*m!T!#T!+`!X3#f!,X!`!$&!-S!c`$8!0N!hJ$M!1J!l3$b!2F!r!%"!33"#3%
  945. X+ -!4%"'!%D!4m"*!%T!5i"-`%h!6`"33&#!88"5J&-!9%"9J&E!@!"C3&U!@m"F`&
  946. X+ i!Ad"JJ'(!B`"N3'8!C8"Q!'G!Cd"SJ'R!D`"X3'f!EX"`!(&!FS"c`(8!GF"fJ(
  947. X+ F!H%"jJ(V!I!"p3(k!Im#"!)*!Ji#%`)B!Kd#)J)R!L`#-3)f!MX#23*#!NF#6!*
  948. X+ 4!PB#@`*J!Q8#DJ*`!RB#G`*m!S%#L!+2!TB#P`+E!Tm#T!+T!Ud#XJ+e!VS#[`,
  949. X+ %!XJ#c!,3!YF#hJ,L!ZN#m!,d![N#rJ-$!`S$%3-@!ad$*!-V!c)$130!!d8$530
  950. X+ 0!e)$@30J!f3$D!0[!hB$HJ0q!i8$L`13!!19!jS$R`1P!kS$X31f!lX$`!2&!mS
  951. X+ $c`29!pX$i!2P!qJ$k`2[!r-$q!2p"!%%"J3("!`%%!38""J%'!3I!!F!"`!(!!F
  952. X+ !"`!(!!F!"`!(!!F!"`!(!!F!"`!(!!F!"`!(!!F!"`!(!!F!"`!(!!F!"`!(!!F
  953. X+ !"`!(!!F!"`!(!`F#"`%(!3F""`!(!`F#"`)(!3F""`)(!3F$"`%(!3F#"`%(!3F
  954. X+ ""`%(!3F""`%(!3F$"`)(!3F""`)(!3F!"`%(!3F""`%(!3F""`%(!3F#"`%(!3F
  955. X+ ""`%(!3F""`%(!3F""`%(!3F""`%(!3F""`%(!3F#"`%(!JF""`!(!`F""`%(!3F
  956. X+ ""`%(!JF""`%(!`F""`%(!JF""`%(!3F""`%(!3F""`%(!3F""`%(!3F""`%(!JF
  957. X+ $"`)(!3F!!!%(!3F""`%(!3F""`%(!3F""`%(!3F#"`)(!JF""`%(!3F""`%(!3F
  958. X+ ""`%(!3F""`%(!3F""`%(!3F""`%(!3F""`-(!3F""`%(!3F""`%(!3F""`%(!3F
  959. X+ ""`-(!3F""`!(!!F!"`-(!!F!"`!(!!F!"`!(!JF!"`!(!!F!"`!(!`F!"`!(!`F
  960. X+ !"`!(!`F#"`)(!JF!"`!(!JF!"`!(!!F!"`!(!!F#"`-(!`F#"`!(!!F!"`-(!!F
  961. X+ !"`!(!`F!"`%(!3F""`%(!3F""`%(!!F""`%(!3F""`%(!3F""`%(!3F""`)(!JF
  962. X+ $"`!(!3F""`%(!3F$"`%(!!F!"`%(!!%!"rrr!!!!!!!!!%*J!!#A!!!!!!!!!!!
  963. X+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"!!%!#3!!5iN
  964. X+ !$!!!5i`!!!!9!$m!#J%(!@J!!3!!!!!!!!!!!)%!!!!!4!!!!3!$J!I!$q!Im!1
  965. X+ !!i!$J!1!!i!$J!1!!i!!!!!!!3!$J!I!$q!Im$ri2rJ(`!I!"m!(`!I!"m!(`!I
  966. X+ !!!!!!3!(!!!!4!!!I`"q!(`!IJ"r!'q!4m!$i!(`!2!!B!!!!!!!!!!!ri$rJ2m
  967. X+ !rJ$r!2q!rm$[i-I`!rJ"q!$`!'!!!!!!!!!!!3!"!!!!4!!!!2i!IJ!q!(i!rJ(
  968. X+ f!q)(`!q!$`!'!!!!!!!!!!!!!Im"r`$r!(m!r`(r!rm(p`rM(m!IJ!m!"J!!!!!
  969. X+ !!!!!!3!1!!!!4!!!!!!!!!!J!$!!1$rm2rirr!!i!$!!)!!!!!!!!!!!!!!!!!"
  970. X+ J!(!!H(rmIrjrrhrqIr`!H!"`!'!!!!!!!!!!"`!1!!!!4!!!!!!!!!!!"J!2!!q
  971. X+ !"m!$iJ(f!2i!IJ!q!(i!rJ!!!!!!!!!!"J!2!"q!(m!2i`Ih!rm"r`$r!(m!r`(
  972. X+ r!Im!$J!1!!!!4!!!!!!$J!1!!i!$J!1!!i!$J!1!(r!2i!I!!i!"!!!!!!!(`!I
  973. X+ !"m!(`!I!"m!(`!I!2rJrq"r`$q!(`!1!!3!!$J!(!!!!4!!!!!!!!!!!!'!!m!(
  974. X+ `!q"(`'q!I`"q!(`!IJ"r!!!!!!!!!!!!!'!!m!(i!rM(m1rJrm$rJ2m!rJ$r!2q
  975. X+ !ri!!$J!"!!!!4!!!!!!!!!3!$!!F!$riIrJrq"`!$!!%!!!!!!!!!!!!!!!!!!B
  976. X+ !$J!H!$rmIrcrr(rm2r`H!!i!"J!!!!!!!!!!"`!"!!!!"d&9@%`!"3!!!!%!!!!
  977. X+ !!(JIm$c)j!iQV`)"kS3%%-,S$!NZ%")''"'"'"!Q33!))!!!@#$J$LJKm"m))rJ
  978. X+ rL$2i2jJam4mB%111%"#$J"!)48%J")eQ3!)*))!(M@2!$FI(B"MJ$M"af$FF3hI
  979. X+ GK&CG904N9qa-2&98H!![k!!!%"!!!!rJ!!!!!!"m(r"qr2rqIrrrrrrrrrrrrrr
  980. X+ rrrrrrrrrrrrr2rrrq(rrrrarrrrmIrrrr(rrrrarrrrmIrrrr(rrrr`rrrri2rr
  981. X+ rq"rrrr!Irrr`$rrri!rrrr!Irrri2rrrr2rrrrlrrrrqrrrrr[lrr[jqrrlq2(r
  982. X+ mH!!rq!!!(r!!!!rJ!!!!!3!3!!!!F!%!3,!(!2!`1`pJFFB83"S'-1!CANiJH3b
  983. X+ I)*S-T*!!$VfN8!iC4Q!m'F)!4hP!)!Ba`*!!$l-K4*2bS4"Kh4#SNZV34&Ke1+L
  984. X+ Q+SL#e9*i+$UR#%#Rb2!!e*!!%J!kNH3F$dRfF!$m[,B!!TN@!!*)'!!"3"!!!A!
  985. X+ m!!2SC(J"J%$i"i$`q$q2q2RrRr$rrcrJrrprm2rrrr$rrrr`rrrrq2rrrrMrrqr
  986. X+ `rrrRm2rrir$rrq(mrrrcr[rrmrcrrrRmrrrir[rrrIlrrrhrrrrmr[rrr1Mrrrp
  987. X+ !rrrr([rrrrirrrrq$rrrr`$rrrm!"rqq!!2m2!!(r(i!"rcq!!!!P`"Q!!!!!!!
  988. X+ !!!$rrrkr"%CTE'8-8f9d)'p`G'P[ER2*!!!!!!j@CA*cD@pZ)'jeE@*PFJ!!!!!
  989. X+ 05@jfCA*d)&0MFQ9PEJ!!!!!08Q9NFQ&h)(0MFQ9PEJ!!!!!68Q9`C@&d)'aKFh3
  990. X+ JE@9cFf&RC3!!!!!",3!!!!!*8f&fC5"RB@eP!!!!!!%Y!!!!!!44G@Pd!!!!!!!
  991. X+ !!!%!J)!!!0'!!!#UJ!!!e)!!!+5!!!$BJ!!!URrrr0P!!!DS!!!'dNbG4U%!!!E
  992. X+ 859f'T!!!"Y*0bfDK!!!'e%!!"U30[qE43$$QT!-[CY*!,@DJ#M0Qm8!mjPJ0-kB
  993. X+ N3$rQ'J!!"JY!!!B%P99@!fUUUJ)Irri"i!!!!!!!!!!!!!#!J!!!mB!!!2Z!!!$
  994. X+ rJ!!!ri!!!2q!!!$rrrrmrrrrr[rrrrlrrrrqrrrrr[rrrrlrrrrqrrrrr[rrrrl
  995. X+ rrrrqrrrrr[rrrrlrrrrqrrrrr[rrrrlrrrrqIrrrrMrrrriIrrrq$rrrrJIrrri
  996. X+ $rrrq!rrrrJ(J!!!!!!!!!!!!!!!!!%aZD$-`!!!!!8P$6L-!"J!!!)!!!3#"!!)
  997. X+ !JJ!$!)-!"!#%!!8!K3!'!)C'8N9'!!B!!!#!!!%!J3!#!))!!`#$!!3!K!!&!)8
  998. X+ !"J#'!!!!"e4&@&3!"J!!!!!F!"`!'J&@!IJ!!3!!!!!!!!!"!))(6h"dD@pZF`!
  999. X+ !!"`!)J!N!6B"C!!"!2m!!!!!!!!!J`GKFfYZB@eP!!!$ZJ!M!!!!!!%G!@!"-3'
  1000. X+ `"!P8C@e`Eh*KFRRq!!!!!!%G!#%"-3"a"!46BACP!!!!!!%G!-J"-3%B"!C$B@j
  1001. X+ MC@`!!!!!!'-!%3"c!)%&$%9iF'a[FQ8JE@pNC3!!!!!!B`##!(-!bJ8'4Q9YB@a
  1002. X+ P!!!!!!"M!-`!F`(-"5&%DA0`E'&j)%jPGh-JBA3J3Q9RD@jZD@jR)'pQ)%GKE@8
  1003. X+ -!!!!!!#-!!J!R!#)"3p'DAKPC#"*ERCPER4[FRP!!!!!!!#F!!J!V!#J"4&%DA0
  1004. X+ `E'&j)(4[E@*cG'pZC3J!!!!!!+`!#!#m!)JZSEhFJG'PYCAN!!!!!!,`!#!$
  1005. X+ -!*J&%&CPFQ*[Ff8JE@9cFf&RCA-!!!!!!-`!#!$F!*J&%90TE'9ZG#!SEQmJBQ9
  1006. X+ PF(-T%!!!!!!!h!!)!1`!Z!896A9XG'PQD@jNCA)J3A9dEbekEfpY9J!!!!!!l!!
  1007. X+ )!2`!J!8-5@jfCA*cC5"8CAKd!!!!!!#-!,J!R!%-"3P6Eh*d)&"KBfZB!!!!!!#
  1008. X+ F!,J!V!$i"39$Efa[FJJ!!!!!!+`!Z!#m!B`&(&"TBfYeF#"[BQTPBh4c)'&eG'p
  1009. X+ YBA4TBf&XE(N!!!!!!,`!Z!$-!6!&$d0[EQCTFQdJB@0dD@pZFdJ!!!!!!-`!Z!$
  1010. X+ F!4%ZKCQ8JF'9dFjJ!!!!!!0`!Z!$X!6%&$9*PFh3JEfiJFh"KBf9d!!!!!!!
  1011. X+ C!*J!+3'F%!4-DA0K!!!!!!!b!*J!3J'F%!9'FQPdHT`!!!!!!%X!Q!"E!C`3"9*
  1012. X+ [GQ9bc!!!!!!""!#J!43"T"!%8'9KFJ!!!!!!M!&T!*`"`4!+)LPE*6mV)5mS+J!
  1013. X+ !!!!!l!#i!2`"&SJ28f0[FQ8JE'PcG$SJG'p`$`!!!!!!l!%D!2`",K!"-aB!!!!
  1014. X+ !!1`"9J$m!@S3!6)@!!!!!!!&!+S!&3%dL"01CA4)B@0V)$-Z-#"2F(4TEfjc!!!
  1015. X+ !!!!!'3![!#N!M)J-8'aKH@9b)%jKE@8k!!!!!!!a!#m!33"rL!P$BA3J6Q&YC6V
  1016. X+ X!!!!!!"+!#m!@J#(L!P%EfFJ6Q&YC6ST!!!!!!"h!!S!L3%BL#C8D'9cC5"[F(4
  1017. X+ TEfjc)(4KDf8JC@CQC@0d)'PYE@9ND@&dC@aj1J!!!!!!l!%b!2`"8SJ$B@jNF!!
  1018. X+ !!!!!M!%)!*`"C)J0)#dJF'&MDfpbC'9b1QN!!!!!!33!4!%8!*H)#dCbG@Pd)%j
  1019. X+ KE@8k5`!!!!!!l!&[!2`"[iJ+BA*[G@jN)'eP,J!!!Mi!&J!!!!!!k!$L!2`"(J3
  1020. X+ #6dX!!!!!!!8!#!!C!'X)$&GSEb"KFQ8JH@pe2`!!!!!!(3!+!#d"1"!+4'&bE@&
  1021. X+ bB@jdD!!!!!!!0J!)!%B!i!JI9fKKG#"VD@jN)'pQ)'0SBA*KBh4PFL"KFQ8JH@p
  1022. X+ e2f8!!!!!!%J!#!"B!(-'$%&bBfKPEfa[CfPcG!!!!!!!A!!)!'`!F`B*3Q&bBQ&
  1023. X+ bD@&Z!!!!!!!!G!!)!)3!F`B)3f&fC5eYB@i!!!!!!)`!#!#F!(-'!d9XCS-!!!!
  1024. X+ !!%J!H!"B!-X'"NKPB@aPFJ!!!!!!A!"i!'`!bJB'5fjTCfKd!!!!!!"d!(J!K!$
  1025. X+ 0"JC3FQPPFh3!!!!!!)`!H!#F!-d'"9*[Ch9P!!!!!!!!5!$B!&J",3B(8f&YGA*
  1026. X+ KDA%!!!!!!&`!f!"`!5d'"e4[GA*TFh3!!!!!!!"d!0J!K!%Y"JK@B@aVHA*TC3!
  1027. X+ !!!!!M!$B!*`",3B'9fPkBA*N!!!!!!#N!!J!Y!$!"K4-CA3JG'KP)'GKE@8JBfK
  1028. X+ [Eh0P)!!!!!!!c!#3!!$F!8J&%d4PBR9R)#KA59T"8N3T)%e[C'@#!!!!!!$-!!J
  1029. X+ !h!"i"3a&H("XEh*P)'e[C'8!!!!!!+3!f!#d!5!&"NCPE@&XC3!!!!!!hJ!)!1i
  1030. X+ !d!8B4'PcF'aKH5"ZCAGc)'*PCQpbC5"RB@eP!!!!!!$`!!J"!!#3!!835R9cG#"
  1031. X+ cD'ph)(0MEh*PF`!!!!!![!!)!-d!8`J)6h"dD@pZFcS!!!!9!!!!!!%%!AF!!3!
  1032. X+ !!!!!!!!!m'!!!!!!l!!+!!!!!!#r!4i!d3&Z"!42F'9Z!!!!!!!!!MX!8!*0"!C
  1033. X+ )D@4NC@i!!!!!!0S"(`$X!@m%"N0KEQ0PE!!!!!!!*`%D!$S"Fi!!!!!!!!"%!5!
  1034. X+ !9J&`"!9&DQ9MG&m!!!!!!&d")!"[!A!%"84bDACPi!!!!!!!3`!-!28"&`!!!!!
  1035. X+ !!!!$!'d!&3#G!!!!!!!!!*B"'`#A!A1!!!!!!!!!!!)8!'8#G)J!!!!!!!!#!$!
  1036. X+ !*J&'#$03E'9KFf8JE'pMBA4PAM!JCQPXC9ia)&ib$@pb)("bCA0c)%0KEQ0PE#"
  1037. X+ dEb"KBQpbG#lA!!!"D!!(!!!!!!#E!$`!V`"i"!*25`!!!!!!Q`#i!+m"%J3*6@p
  1038. X+ bC5"*EQC[ZJ!!!!!!#J!F!"S"0N!#!'3!!!!!!%N!E3"E!1%)'&0PC5"XD@0PER0
  1039. X+ P)'C[FL"NCA4KD@ac,J!!!!!!)`!h!$-")3JY3fp`HA*TCfKd)$%j1$8X)$%j1$B
  1040. X+ X)$%j1$FX)$%j1$JX)$%j1$NX)$%j16!Z1J!!!!!!-`!P!%8"3`Jf3RNJ8h4TBfK
  1041. X+ dD@jR)%eKG'KPE@&dDA0MD#"$C@jdFR9Y)'&ZC#"0D@YP)&0dCA"SC@jcEfiZ!!!
  1042. X+ !!!"G!$)!E`%P#$0#G@FJFQ9`Eh*dFb!Y)'9YB@PX)'jPG'KKBfXYBR9RFd"XD@j
  1043. X+ M,Q0TFbjeF'9ZELjPC(8Z!!!!!!"d!#-!K!%fL$K#FQpeCfKd)(4[)(P[G5"LH5"
  1044. X+ +EfKZERNX)%T[EL`J3@jNH5`J5f9fD@iX)%eTDf8JB@jN)&4[E3!!!&X!@`#8!,i
  1045. X+ !Z3%I%3'J&0kK&0i!+!!$k(`!!qJJ!*3![J#j!4m!"3!"!!!!!`!B!"J`'!!-!!!
  1046. X+ !!!"e)&m"!!S!P!#q!,N"(`F!"3!&#`!B!"K!!*3![J#j!4rr!!!"!!!!00)!!$2
  1047. X+ 5!!!%p!!`ca!)&J!!!"`$2J!-8%P$9!!"!'TZD$-`!!!!JNe&6P8!"J#168&XG!!
  1048. X+ "!1**3diM!!B!qNK%9%%!#J&14P*&4J!'!G*'6dj8!!)#*NC26N3!!!*+4%a24`!
  1049. X+ $!PC%594-!!-#KN098P-!"`+f3Nj%6!!!!aB!C2rr!!!!!!!!!!!6M[rr!!!cF`!
  1050. X+ aG&J!!2rr!!!#8!!!!!!!CJ!!!!!Sa!!!!!!!C`!&!!!#H`!!!!!!D!!+!!!#b`!
  1051. X+ !!!!!D3!8!!!$H3!!!!!!DJ!E!!!%%!!!!!!!D`!J!!!%e3!!!!!!E!!P!!!&F3!
  1052. X+ !!!!!J!!h!!!'A`!!!!!!J3!m!!!(l3!!!!!!J3"#)!!*H`!!!!!!JJ"0)!!+I`!
  1053. X+ !!!!!J`"D)!!,J`!!!!!!K3&l)!!-K`!!!!!!K!&M)!!Q[!!!!!!!J!&[)!!R`!!
  1054. X+ !!!!!KJ'+!!!TA`!!!!!!b3"Q!!!0L`!!!!!!bJ"a!!!0N3!!!!!!c!"l!!!0RJ!
  1055. X+ !!!!!c3#+!!!0UJ!!!!!!cJ#A!!!0Y3!!!!!!c`#T!!!0``!!!!!!b`#h!!!0d!!
  1056. X+ !!!!!d!$"!!!0fJ!!!!!!CJ$6!!!0l!!!!!!!C`$F!!!1&!!!!!!!C2rr!!!19J!
  1057. X+ !!!!!J!$M!!!1D3!!!!!!J3$[!!!1G!!!!!!!JJ$q!!!1I`!!!!!!J`%,!!!1LJ!
  1058. X+ !!!!!K!%E!!!1P3!!!!!!K3&8!!!QX3!!!!!!KJ'8!!!UX`!!!!",LIrr)!!1S!!
  1059. X+ !!!",M2rr!!!B,!!!!!",!!%Q!!!N$J!!!!!!P`%Y"!!N%J!!!!!!J3%f!!!N@!!
  1060. X+ !!!!!JJ'H!!!U[J!!!!!!J`'Z!!!UhJ!aG&$`B2rr!!!`rJ!!!!!!JIrr!!!b"`!
  1061. X+ !!!!!J[rr!!!UrJ!!!!!!J`'Q!!!Z[!!!!!$`B2rr!!!a&`!!!!!!C2rr!!!NF3!
  1062. X+ !!!!!Drrr!!!NZ3!!!!!!CIrr!!!P!3!!!!!!C[rr!!!P53!!!!!!Crrr!!!PN3!
  1063. X+ !!!!!D2rr!!!Pf3!!!!!!DIrr!!!Q)3!!!!!!D[rr!!!QD3!!!!!!J!&%!!!UB`!
  1064. X+ !!!!%4QPXC34&C'Pd#8PZGQ9ZG'pbH3C"Bh4TEfi%8(*PF!40EhCP%89iG'9ZC'9
  1065. X+ N)%0[E@eKEQ4c"&P1+#N&@8j4+#N+8f&fC@3J4f&YC3a&H("XEh*P)%GKE@8,8f&
  1066. X+ fC@3J6'9fC@`+3A"`E'8JE@9ZG3P'D@aP)'ePER815@jfC@jdEh*j)'ePER8-3@0
  1067. X+ dD@pZFb"YC@je%9"bCA"KFQ&dD@pZFb"YC@je$8e[GQ9YC@jd)'ePER8*4@4TG#"
  1068. X+ YC@je%89iG'9ZC'9N)%0[E@eKEQ4c#'GbBA"SD@0c"QYPH@eKF!Y"F("XD@0KG'P
  1069. X+ [EJj6BACP)%0SBA)J4QPXC3a&H("XEh*P)'CTE'826'9fC@`J9'9YF#"'D@aP#N*
  1070. X+ [EQ9c)%CTE'8'HR3YD@*Y#%KKBfY'Efjd$8&LEh9d)%jPG%KKBfX26Q9d5'&MDb"
  1071. X+ QEh)J6@&M$N&eH'PXD@&bH5"'D@aP#d*[EQ9c)%aPGQ9X#d&`F'aTBf&dD@pZ$N&
  1072. X+ eH'PXD@&bH5"'D@aP#94&@&3JCQPXC3P849K8)'CTE'8(6h"dD@pZF`GKFfYZB@e
  1073. X+ P"f&cDfjKE@9&6!:
  1074. X*** /dev/null    Tue Feb 20 01:29:52 1990
  1075. X--- auxil/MacHelp    Tue Feb  6 16:33:54 1990
  1076. X***************
  1077. X*** 0
  1078. X
  1079. X--- 1,35 -----
  1080. X+ y k u   7 8 9         UP 
  1081. X+  \|/     \|/          |
  1082. X+ h-.-l   4-.-6   LEFT<- ->RIGHT
  1083. X+  /|\     /|\          |
  1084. X+ b j n   1 2 3        DOWN
  1085. X+       numberpad  cursor keys
  1086. X+ Move commands:
  1087. X+ yuhjklbn: go one step in specified direction
  1088. X+ YUHJKLBN: go in specified direction until you
  1089. X+           hit a wall or run into something
  1090. X+ g<dir>:   run in direction <dir> until something
  1091. X+           interesting is seen
  1092. X+ G<dir>,
  1093. X+ [SHIFT]<dir>: same, except a branching corridor isn't considered
  1094. X+               interesting
  1095. X+ m<dir>:   move without picking up objects
  1096. X+ 
  1097. X+ If the window title shows "[MOVE]", the number keys move your character,
  1098. X+ otherwise they act as a numeric keypad.
  1099. X+ The 'g', 'G', '[SHIFT]' and 'm' modifiers may also be used with the
  1100. X+ numberpad and the cursor keys.
  1101. X+ The mouse cursor shows which direction you will try to move if you
  1102. X+ press the mouse button when the mouse is in the Nethack window.  You may
  1103. X+ use the 'g', 'G', '[SHIFT]' and 'm' modifiers with the mouse button too.
  1104. X+ The '5' key on the numberpad invokes the "open door" command.
  1105. X+ The '0' key on the numberpad invokes the "do inventory" command.
  1106. X+ 
  1107. X+ For pre-ADB keyboards (Mac+ keyboards and earlier), use the Command key
  1108. X+ for the Control key and the "`" (backquote) key for the escape key.
  1109. X+ 
  1110. X+ Press the clear key (on the numberpad) to switch between movement mode
  1111. X+ and numeric keypad mode.
  1112. X+ 
  1113. X+ The option key is the meta-key. For option-n, press option-shift-n and
  1114. X+ for option-u, press option-shift-u.
  1115. X*** Old/Files    Sun Nov 19 20:58:09 1989
  1116. X--- ./Files    Mon Feb 19 14:07:54 1990
  1117. X***************
  1118. X*** 5,12
  1119. X  
  1120. X  
  1121. X  (files in top directory)
  1122. X! Files           Install.dos     Install.unix    Makefile.top    Porting
  1123. X! README
  1124. X  
  1125. X  
  1126. X  amiga:
  1127. X
  1128. X--- 5,12 -----
  1129. X  
  1130. X  
  1131. X  (files in top directory)
  1132. X! Files           Install.ami     Install.dos     Install.mac    Install.unix
  1133. X! Install.vms     Makefile.top    Porting         README
  1134. X  
  1135. X  amiga:
  1136. X  (files for Amiga version)
  1137. X***************
  1138. X*** 8,14
  1139. X  Files           Install.dos     Install.unix    Makefile.top    Porting
  1140. X  README
  1141. X  
  1142. X- 
  1143. X  amiga:
  1144. X  (files for Amiga version)
  1145. X  Install.ami     Makefile.ami    NetHack.cnf     ami.lnk         amidos.c
  1146. X
  1147. X--- 8,13 -----
  1148. X  Files           Install.ami     Install.dos     Install.mac    Install.unix
  1149. X  Install.vms     Makefile.top    Porting         README
  1150. X  
  1151. X  amiga:
  1152. X  (files for Amiga version)
  1153. X  Makefile.ami    NHScore.uu      NHinfo.uu       NetHack.cnf     NewGame.uu
  1154. X***************
  1155. X*** 11,19
  1156. X  
  1157. X  amiga:
  1158. X  (files for Amiga version)
  1159. X! Install.ami     Makefile.ami    NetHack.cnf     ami.lnk         amidos.c
  1160. X! amifont.uu      amifont8.uu     amimenu.c       amitcap.c       amitty.c
  1161. X! amiunix.c       amiwind.c       fcntl.h         signal.h        stdio.h
  1162. X  
  1163. X  
  1164. X  auxil:
  1165. X
  1166. X--- 10,19 -----
  1167. X  
  1168. X  amiga:
  1169. X  (files for Amiga version)
  1170. X! Makefile.ami    NHScore.uu      NHinfo.uu       NetHack.cnf     NewGame.uu
  1171. X! ami.lnk         amidos.c        amifont.uu      amifont8.uu     amimenu.c
  1172. X! amitcap.c       amitty.c        amiunix.c       amiwbench.c     amiwind.c
  1173. X! compact.lat     dflticon.uu
  1174. X  
  1175. X  auxil:
  1176. X  (files for all versions)
  1177. X***************
  1178. X*** 15,21
  1179. X  amifont.uu      amifont8.uu     amimenu.c       amitcap.c       amitty.c
  1180. X  amiunix.c       amiwind.c       fcntl.h         signal.h        stdio.h
  1181. X  
  1182. X- 
  1183. X  auxil:
  1184. X  (files for all versions)
  1185. X  Guidebook.mn    castle.des      cmdhelp         data.base       endgame.des
  1186. X
  1187. X--- 15,20 -----
  1188. X  amitcap.c       amitty.c        amiunix.c       amiwbench.c     amiwind.c
  1189. X  compact.lat     dflticon.uu
  1190. X  
  1191. X  auxil:
  1192. X  (files for all versions)
  1193. X  Guidebook.mn    castle.des      cmdhelp         data.base       endgame.des
  1194. X***************
  1195. X*** 23,28
  1196. X  oracles         rumors.fal      rumors.tru      tower.des
  1197. X  (files for UNIX versions)
  1198. X  Makefile.auxil  lev_comp.6      nethack.6       nethack.sh
  1199. X  
  1200. X  
  1201. X  others:
  1202. X
  1203. X--- 22,29 -----
  1204. X  oracles         rumors.fal      rumors.tru      tower.des
  1205. X  (files for UNIX versions)
  1206. X  Makefile.auxil  lev_comp.6      nethack.6       nethack.sh
  1207. X+ (file for Macintosh version)
  1208. X+ MacHelp
  1209. X  
  1210. X  include:
  1211. X  (files for all versions)
  1212. X***************
  1213. X*** 24,29
  1214. X  (files for UNIX versions)
  1215. X  Makefile.auxil  lev_comp.6      nethack.6       nethack.sh
  1216. X  
  1217. X  
  1218. X  others:
  1219. X  (files for MSDOS version)
  1220. X
  1221. X--- 25,44 -----
  1222. X  (file for Macintosh version)
  1223. X  MacHelp
  1224. X  
  1225. X+ include:
  1226. X+ (files for all versions)
  1227. X+ MacAlert.h      amiconf.h       artifact.h      attrib.h        color.h
  1228. X+ config.h        coord.h         decl.h          def_os2.h       edog.h
  1229. X+ epri.h          eshk.h          extern.h        flag.h          func_tab.h
  1230. X+ global.h        gold.h          hack.h          lev.h           macconf.h
  1231. X+ mfndpos.h       mkroom.h        monattk.h       mondata.h       monflag.h
  1232. X+ monst.h         monsym.h        msdos.h         obj.h           objclass.h
  1233. X+ patchlevel.h    pcconf.h        permonst.h      prop.h          rm.h
  1234. X+ sp_lev.h        spell.h         system.h        termcap.h       tosconf.h
  1235. X+ tradstdc.h      trampoli.h      trap.h          unixconf.h      vault.h
  1236. X+ vmsconf.h       wseg.h          you.h           youprop.h
  1237. X+ (file for special level compiler (STRONGHOLD option))
  1238. X+ lev_comp.h
  1239. X  
  1240. X  mac:
  1241. X  (files for Macintosh version)
  1242. X***************
  1243. X*** 25,30
  1244. X  Makefile.auxil  lev_comp.6      nethack.6       nethack.sh
  1245. X  
  1246. X  
  1247. X  others:
  1248. X  (files for MSDOS version)
  1249. X  Make.ini        Makefile.msc    Makefile.os2    Makefile.ovl    Makefile.pc
  1250. X
  1251. X--- 40,50 -----
  1252. X  (file for special level compiler (STRONGHOLD option))
  1253. X  lev_comp.h
  1254. X  
  1255. X+ mac:
  1256. X+ (files for Macintosh version)
  1257. X+ MD.rsrc.hqx     MacAlert.c      NH3.proj.hqx    NH3.rsrc.hqx    Segments.mac
  1258. X+ mac.c           macfile.c       macinit.c
  1259. X+ 
  1260. X  others:
  1261. X  (files for MSDOS version)
  1262. X  Makefile.lib    Makefile.msc    Makefile.os2    Makefile.ovl    Makefile.pc
  1263. X***************
  1264. X*** 27,35
  1265. X  
  1266. X  others:
  1267. X  (files for MSDOS version)
  1268. X! Make.ini        Makefile.msc    Makefile.os2    Makefile.ovl    Makefile.pc
  1269. X! Makefile.tcc    Maketcc.ini     NetHack.cnf     ovlmgr.asm      ovlmgr.doc
  1270. X! ovlmgr.uu       termcap         termcap.uu      trampoli.c
  1271. X  (files for MSDOS, Amiga, and Atari versions)
  1272. X  pcmain.c        pctty.c         pcunix.c
  1273. X  (file for MSDOS and new Atari versions)
  1274. X
  1275. X--- 47,55 -----
  1276. X  
  1277. X  others:
  1278. X  (files for MSDOS version)
  1279. X! Makefile.lib    Makefile.msc    Makefile.os2    Makefile.ovl    Makefile.pc
  1280. X! Makefile.tcc    NetHack.cnf     ovlmgr.asm      ovlmgr.doc      ovlmgr.uu
  1281. X! termcap         termcap.uu      trampoli.c
  1282. X  (files for MSDOS, Amiga, and Atari versions)
  1283. X  lev_lex.c       pcmain.c        pctty.c         pcunix.c
  1284. X  (file for MSDOS and Atari versions)
  1285. X***************
  1286. X*** 31,38
  1287. X  Makefile.tcc    Maketcc.ini     NetHack.cnf     ovlmgr.asm      ovlmgr.doc
  1288. X  ovlmgr.uu       termcap         termcap.uu      trampoli.c
  1289. X  (files for MSDOS, Amiga, and Atari versions)
  1290. X! pcmain.c        pctty.c         pcunix.c
  1291. X! (file for MSDOS and new Atari versions)
  1292. X  msdos.c
  1293. X  (files for new Atari version)
  1294. X  Makefile.st     atari.cnf       atarifnt.uue
  1295. X
  1296. X--- 51,58 -----
  1297. X  Makefile.tcc    NetHack.cnf     ovlmgr.asm      ovlmgr.doc      ovlmgr.uu
  1298. X  termcap         termcap.uu      trampoli.c
  1299. X  (files for MSDOS, Amiga, and Atari versions)
  1300. X! lev_lex.c       pcmain.c        pctty.c         pcunix.c
  1301. X! (file for MSDOS and Atari versions)
  1302. X  msdos.c
  1303. X  (files for  Atari version)
  1304. X  Makefile.st     atari.cnf       atarifnt.uue
  1305. X***************
  1306. X*** 34,40
  1307. X  pcmain.c        pctty.c         pcunix.c
  1308. X  (file for MSDOS and new Atari versions)
  1309. X  msdos.c
  1310. X! (files for new Atari version)
  1311. X  Makefile.st     atari.cnf       atarifnt.uue
  1312. X  (file for old Atari version)
  1313. X  oldtos.c
  1314. X
  1315. X--- 54,60 -----
  1316. X  lev_lex.c       pcmain.c        pctty.c         pcunix.c
  1317. X  (file for MSDOS and Atari versions)
  1318. X  msdos.c
  1319. X! (files for  Atari version)
  1320. X  Makefile.st     atari.cnf       atarifnt.uue
  1321. X  (Berkeley random number file, which may be included in any version)
  1322. X  random.c
  1323. X***************
  1324. X*** 36,43
  1325. X  msdos.c
  1326. X  (files for new Atari version)
  1327. X  Makefile.st     atari.cnf       atarifnt.uue
  1328. X- (file for old Atari version)
  1329. X- oldtos.c
  1330. X  (Berkeley random number file, which may be included in any version)
  1331. X  random.c
  1332. X  
  1333. X
  1334. X--- 56,61 -----
  1335. X  msdos.c
  1336. X  (files for  Atari version)
  1337. X  Makefile.st     atari.cnf       atarifnt.uue
  1338. X  (Berkeley random number file, which may be included in any version)
  1339. X  random.c
  1340. X  
  1341. X***************
  1342. X*** 41,62
  1343. X  (Berkeley random number file, which may be included in any version)
  1344. X  random.c
  1345. X  
  1346. X- 
  1347. X- include:
  1348. X- (files for all versions)
  1349. X- amiconf.h       artifact.h      attrib.h        color.h         config.h
  1350. X- coord.h         decl.h          def_os2.h       edog.h          epri.h
  1351. X- eshk.h          extern.h        flag.h          func_tab.h      global.h
  1352. X- gold.h          hack.h          lev.h           macconf.h       mfndpos.h
  1353. X- mkroom.h        monattk.h       mondata.h       monflag.h       monst.h
  1354. X- monsym.h        msdos.h         obj.h           objclass.h      patchlevel.h
  1355. X- pcconf.h        permonst.h      prop.h          rm.h            sp_lev.h
  1356. X- spell.h         system.h        termcap.h       tosconf.h       tradstdc.h
  1357. X- trampoli.h      trap.h          trapname.h      unixconf.h      vault.h
  1358. X- vmsconf.h       wseg.h          you.h           youprop.h
  1359. X- (file for special level compiler (STRONGHOLD option))
  1360. X- lev_comp.h
  1361. X- 
  1362. X  src:
  1363. X  (files for all versions)
  1364. X  allmain.c       alloc.c         apply.c         artifact.c      attrib.c
  1365. X
  1366. X--- 59,64 -----
  1367. X  (Berkeley random number file, which may be included in any version)
  1368. X  random.c
  1369. X  
  1370. X  src:
  1371. X  (files for all versions)
  1372. X  allmain.c       alloc.c         apply.c         artifact.c      attrib.c
  1373. X***************
  1374. X*** 84,90
  1375. X  
  1376. X  vms:
  1377. X  (files for VMS version)
  1378. X! Install.vms     spec_lev.com    vmsbuild.com    vmsmain.c       vmsmisc.c
  1379. X  vmstty.c        vmsunix.c
  1380. X  (GNU termcap files that support VMS version)
  1381. X  vmstermcap.c    vmstparam.c
  1382. X
  1383. X--- 86,92 -----
  1384. X  
  1385. X  vms:
  1386. X  (files for VMS version)
  1387. X! Install.com     spec_lev.com    vmsbuild.com    vmsmain.c       vmsmisc.c
  1388. X  vmstty.c        vmsunix.c
  1389. X  (GNU termcap files that support VMS version)
  1390. X  vmstermcap.c    vmstparam.c
  1391. X***************
  1392. X*** 88,95
  1393. X  vmstty.c        vmsunix.c
  1394. X  (GNU termcap files that support VMS version)
  1395. X  vmstermcap.c    vmstparam.c
  1396. X- 
  1397. X- mac:
  1398. X- (files for Macintosh version)
  1399. X- Install.mac     Makedefs.rma    Nethack.rma     Segments.mac    hackfont.hqx
  1400. X- mac.c           macfile.c       macinit.c       makedefs.r      nethack.r
  1401. X
  1402. X--- 90,92 -----
  1403. X  vmstty.c        vmsunix.c
  1404. X  (GNU termcap files that support VMS version)
  1405. X  vmstermcap.c    vmstparam.c
  1406. X*** Old/mac/Segments.mac    Sun Nov 19 21:01:33 1989
  1407. X--- mac/Segments.mac    Mon Jan 29 23:49:38 1990
  1408. X***************
  1409. X*** 20,26
  1410. X  cmd.c
  1411. X  getline.c
  1412. X  mac.c
  1413. X- macfile.c
  1414. X  MacTraps
  1415. X  pcmain.c
  1416. X  prisym.c
  1417. X
  1418. X--- 20,25 -----
  1419. X  cmd.c
  1420. X  getline.c
  1421. X  mac.c
  1422. X  MacTraps
  1423. X  pcunix.c
  1424. X  random.c
  1425. X***************
  1426. X*** 22,29
  1427. X  mac.c
  1428. X  macfile.c
  1429. X  MacTraps
  1430. X! pcmain.c
  1431. X! prisym.c
  1432. X  random.c
  1433. X  rnd.c
  1434. X  termcap.c
  1435. X
  1436. X--- 21,27 -----
  1437. X  getline.c
  1438. X  mac.c
  1439. X  MacTraps
  1440. X! pcunix.c
  1441. X  random.c
  1442. X  rnd.c
  1443. X  termcap.c
  1444. X***************
  1445. X*** 27,32
  1446. X  random.c
  1447. X  rnd.c
  1448. X  termcap.c
  1449. X  
  1450. X  ===== Seg 2 =====
  1451. X  apply.c
  1452. X
  1453. X--- 25,31 -----
  1454. X  random.c
  1455. X  rnd.c
  1456. X  termcap.c
  1457. X+ topl.c
  1458. X  
  1459. X  ===== Seg 2 =====
  1460. X  mkobj.c
  1461. X***************
  1462. X*** 29,37
  1463. X  termcap.c
  1464. X  
  1465. X  ===== Seg 2 =====
  1466. X! apply.c
  1467. X! attrib.c
  1468. X! do.c
  1469. X  
  1470. X  ===== Seg 3 =====
  1471. X  dog.c
  1472. X
  1473. X--- 28,40 -----
  1474. X  topl.c
  1475. X  
  1476. X  ===== Seg 2 =====
  1477. X! mkobj.c
  1478. X! mkroom.c
  1479. X! mon.c
  1480. X! mondata.c
  1481. X! monmove.c
  1482. X! track.c
  1483. X! were.c
  1484. X  
  1485. X  ===== Seg 3 =====
  1486. X  engrave.c
  1487. X***************
  1488. X*** 34,44
  1489. X  do.c
  1490. X  
  1491. X  ===== Seg 3 =====
  1492. X! dog.c
  1493. X! dogmove.c
  1494. X! dokick.c
  1495. X! dothrow.c
  1496. X! do_name.c
  1497. X  hack.c
  1498. X  
  1499. X  ===== Seg 4 =====
  1500. X
  1501. X--- 37,43 -----
  1502. X  were.c
  1503. X  
  1504. X  ===== Seg 3 =====
  1505. X! engrave.c
  1506. X  hack.c
  1507. X  invent.c
  1508. X  mthrowu.c
  1509. X***************
  1510. X*** 40,45
  1511. X  dothrow.c
  1512. X  do_name.c
  1513. X  hack.c
  1514. X  
  1515. X  ===== Seg 4 =====
  1516. X  do_wear.c
  1517. X
  1518. X--- 39,46 -----
  1519. X  ===== Seg 3 =====
  1520. X  engrave.c
  1521. X  hack.c
  1522. X+ invent.c
  1523. X+ mthrowu.c
  1524. X  
  1525. X  ===== Seg 4 =====
  1526. X  dbridge.c
  1527. X***************
  1528. X*** 42,49
  1529. X  hack.c
  1530. X  
  1531. X  ===== Seg 4 =====
  1532. X! do_wear.c
  1533. X! eat.c
  1534. X  shk.c
  1535. X  shknam.c
  1536. X  
  1537. X
  1538. X--- 43,55 -----
  1539. X  mthrowu.c
  1540. X  
  1541. X  ===== Seg 4 =====
  1542. X! dbridge.c
  1543. X! dog.c
  1544. X! dogmove.c
  1545. X! pri.c
  1546. X! priest.c
  1547. X! 
  1548. X! ===== Seg 5 =====
  1549. X  shk.c
  1550. X  shknam.c
  1551. X  trap.c
  1552. X***************
  1553. X*** 46,51
  1554. X  eat.c
  1555. X  shk.c
  1556. X  shknam.c
  1557. X  
  1558. X  ===== Seg 5 =====
  1559. X  engrave.c
  1560. X
  1561. X--- 52,58 -----
  1562. X  ===== Seg 5 =====
  1563. X  shk.c
  1564. X  shknam.c
  1565. X+ trap.c
  1566. X  
  1567. X  ===== Seg 6 =====
  1568. X  stdio [LIB]
  1569. X***************
  1570. X*** 47,60
  1571. X  shk.c
  1572. X  shknam.c
  1573. X  
  1574. X- ===== Seg 5 =====
  1575. X- engrave.c
  1576. X- exper.c
  1577. X- extralev.c
  1578. X- fountain.c
  1579. X- invent.c
  1580. X- vault.c
  1581. X- 
  1582. X  ===== Seg 6 =====
  1583. X  lock.c
  1584. X  makemon.c
  1585. X
  1586. X--- 54,59 -----
  1587. X  shknam.c
  1588. X  trap.c
  1589. X  
  1590. X  ===== Seg 6 =====
  1591. X  stdio [LIB]
  1592. X  storage [LIB]
  1593. X***************
  1594. X*** 56,65
  1595. X  vault.c
  1596. X  
  1597. X  ===== Seg 6 =====
  1598. X! lock.c
  1599. X! makemon.c
  1600. X! mcastu.c
  1601. X! mhitm.c
  1602. X  
  1603. X  ===== Seg 7 =====
  1604. X  mhitu.c
  1605. X
  1606. X--- 55,65 -----
  1607. X  trap.c
  1608. X  
  1609. X  ===== Seg 6 =====
  1610. X! stdio [LIB]
  1611. X! storage [LIB]
  1612. X! strings [LIB]
  1613. X! Math [LIB]
  1614. X! unix [LIB]
  1615. X  
  1616. X  ===== Seg 7 =====
  1617. X  makemon.c
  1618. X***************
  1619. X*** 62,69
  1620. X  mhitm.c
  1621. X  
  1622. X  ===== Seg 7 =====
  1623. X! mhitu.c
  1624. X! uhitm.c
  1625. X  
  1626. X  ===== Seg 8 =====
  1627. X  mklev.c
  1628. X
  1629. X--- 62,71 -----
  1630. X  unix [LIB]
  1631. X  
  1632. X  ===== Seg 7 =====
  1633. X! makemon.c
  1634. X! mkmaze.c
  1635. X! prisym.c
  1636. X! read.c
  1637. X  
  1638. X  ===== Seg 8 =====
  1639. X  artifact.c
  1640. X***************
  1641. X*** 66,75
  1642. X  uhitm.c
  1643. X  
  1644. X  ===== Seg 8 =====
  1645. X! mklev.c
  1646. X! mkobj.c
  1647. X! mkroom.c
  1648. X! mon.c
  1649. X  
  1650. X  ===== Seg 9 =====
  1651. X  mondata.c
  1652. X
  1653. X--- 68,79 -----
  1654. X  read.c
  1655. X  
  1656. X  ===== Seg 8 =====
  1657. X! artifact.c
  1658. X! attrib.c
  1659. X! search.c
  1660. X! sounds.c
  1661. X! timeout.c
  1662. X! wizard.c
  1663. X  
  1664. X  ===== Seg 9 =====
  1665. X  mhitu.c
  1666. X***************
  1667. X*** 72,82
  1668. X  mon.c
  1669. X  
  1670. X  ===== Seg 9 =====
  1671. X! mondata.c
  1672. X! monmove.c
  1673. X! mthrowu.c
  1674. X! music.c
  1675. X! objnam.c
  1676. X  
  1677. X  ===== Seg 10 =====
  1678. X  pager.c
  1679. X
  1680. X--- 76,82 -----
  1681. X  wizard.c
  1682. X  
  1683. X  ===== Seg 9 =====
  1684. X! mhitu.c
  1685. X  
  1686. X  ===== Seg 10 =====
  1687. X  do_name.c
  1688. X***************
  1689. X*** 79,85
  1690. X  objnam.c
  1691. X  
  1692. X  ===== Seg 10 =====
  1693. X! pager.c
  1694. X  pickup.c
  1695. X  polyself.c
  1696. X  potion.c
  1697. X
  1698. X--- 79,85 -----
  1699. X  mhitu.c
  1700. X  
  1701. X  ===== Seg 10 =====
  1702. X! do_name.c
  1703. X  pickup.c
  1704. X  weapon.c
  1705. X  
  1706. X***************
  1707. X*** 81,88
  1708. X  ===== Seg 10 =====
  1709. X  pager.c
  1710. X  pickup.c
  1711. X! polyself.c
  1712. X! potion.c
  1713. X  
  1714. X  ===== Seg 11 =====
  1715. X  pray.c
  1716. X
  1717. X--- 81,87 -----
  1718. X  ===== Seg 10 =====
  1719. X  do_name.c
  1720. X  pickup.c
  1721. X! weapon.c
  1722. X  
  1723. X  ===== Seg 11 =====
  1724. X  mcastu.c
  1725. X***************
  1726. X*** 85,93
  1727. X  potion.c
  1728. X  
  1729. X  ===== Seg 11 =====
  1730. X! pray.c
  1731. X! pri.c
  1732. X! priest.c
  1733. X  
  1734. X  ===== Seg 12 =====
  1735. X  read.c
  1736. X
  1737. X--- 84,92 -----
  1738. X  weapon.c
  1739. X  
  1740. X  ===== Seg 11 =====
  1741. X! mcastu.c
  1742. X! mhitm.c
  1743. X! polyself.c
  1744. X  
  1745. X  ===== Seg 12 =====
  1746. X  lock.c
  1747. X***************
  1748. X*** 90,103
  1749. X  priest.c
  1750. X  
  1751. X  ===== Seg 12 =====
  1752. X! read.c
  1753. X! restore.c
  1754. X! rumors.c
  1755. X! save.c
  1756. X! search.c
  1757. X! sit.c
  1758. X! sounds.c
  1759. X! spell.c
  1760. X  
  1761. X  ===== Seg 13 =====
  1762. X  sp_lev.c
  1763. X
  1764. X--- 89,96 -----
  1765. X  polyself.c
  1766. X  
  1767. X  ===== Seg 12 =====
  1768. X! lock.c
  1769. X! vault.c
  1770. X  
  1771. X  ===== Seg 13 =====
  1772. X  decl.c
  1773. X***************
  1774. X*** 100,128
  1775. X  spell.c
  1776. X  
  1777. X  ===== Seg 13 =====
  1778. X- sp_lev.c
  1779. X- steal.c
  1780. X- timeout.c
  1781. X- topl.c
  1782. X- track.c
  1783. X- trap.c
  1784. X- weapon.c
  1785. X- were.c
  1786. X- wield.c
  1787. X- 
  1788. X- ===== Seg 14 =====
  1789. X- Math [LIB]
  1790. X- unix [LIB]
  1791. X- worn.c
  1792. X- write.c
  1793. X- zap.c
  1794. X- 
  1795. X- ===== Seg 15 =====
  1796. X- stdio [LIB]
  1797. X- storage [LIB]
  1798. X- strings [LIB]
  1799. X- 
  1800. X- ===== Seg 16 =====
  1801. X  decl.c
  1802. X  macinit.c
  1803. X  monst.c
  1804. X
  1805. X--- 93,98 -----
  1806. X  vault.c
  1807. X  
  1808. X  ===== Seg 13 =====
  1809. X  decl.c
  1810. X  macfile.c
  1811. X  macinit.c
  1812. X***************
  1813. X*** 124,129
  1814. X  
  1815. X  ===== Seg 16 =====
  1816. X  decl.c
  1817. X  macinit.c
  1818. X  monst.c
  1819. X  objects.c
  1820. X
  1821. X--- 94,100 -----
  1822. X  
  1823. X  ===== Seg 13 =====
  1824. X  decl.c
  1825. X+ macfile.c
  1826. X  macinit.c
  1827. X  monst.c
  1828. X  objects.c
  1829. X***************
  1830. X*** 129,134
  1831. X  objects.c
  1832. X  options.c
  1833. X  o_init.c
  1834. X  u_init.c
  1835. X  version.c
  1836. X  
  1837. X
  1838. X--- 100,107 -----
  1839. X  objects.c
  1840. X  options.c
  1841. X  o_init.c
  1842. X+ pcmain.c
  1843. X+ pctty.c
  1844. X  u_init.c
  1845. X  version.c
  1846. X  
  1847. X***************
  1848. X*** 132,137
  1849. X  u_init.c
  1850. X  version.c
  1851. X  
  1852. X  ===== Seg 17 =====
  1853. X  end.c
  1854. X  pctty.c
  1855. X
  1856. X--- 105,125 -----
  1857. X  u_init.c
  1858. X  version.c
  1859. X  
  1860. X+ ===== Seg 14 =====
  1861. X+ apply.c
  1862. X+ exper.c
  1863. X+ 
  1864. X+ ===== Seg 15 =====
  1865. X+ dothrow.c
  1866. X+ sit.c
  1867. X+ wield.c
  1868. X+ worn.c
  1869. X+ write.c
  1870. X+ 
  1871. X+ ===== Seg 16 =====
  1872. X+ pager.c
  1873. X+ rumors.c
  1874. X+ 
  1875. X  ===== Seg 17 =====
  1876. X  demon.c
  1877. X  do.c
  1878. X***************
  1879. X*** 133,138
  1880. X  version.c
  1881. X  
  1882. X  ===== Seg 17 =====
  1883. X  end.c
  1884. X  pctty.c
  1885. X  pcunix.c
  1886. X
  1887. X--- 121,132 -----
  1888. X  rumors.c
  1889. X  
  1890. X  ===== Seg 17 =====
  1891. X+ demon.c
  1892. X+ do.c
  1893. X+ steal.c
  1894. X+ worm.c
  1895. X+ 
  1896. X+ ===== Seg 18 =====
  1897. X  end.c
  1898. X  rip.c
  1899. X  topten.c
  1900. X***************
  1901. X*** 134,141
  1902. X  
  1903. X  ===== Seg 17 =====
  1904. X  end.c
  1905. X- pctty.c
  1906. X- pcunix.c
  1907. X  rip.c
  1908. X  topten.c
  1909. X  
  1910. X
  1911. X--- 128,133 -----
  1912. X  
  1913. X  ===== Seg 18 =====
  1914. X  end.c
  1915. X  rip.c
  1916. X  topten.c
  1917. X  
  1918. X***************
  1919. X*** 139,146
  1920. X  rip.c
  1921. X  topten.c
  1922. X  
  1923. X! ===== Seg 18 =====
  1924. X! artifact.c
  1925. X  bones.c
  1926. X  dbridge.c
  1927. X  demon.c
  1928. X
  1929. X--- 131,156 -----
  1930. X  rip.c
  1931. X  topten.c
  1932. X  
  1933. X! ===== Seg 19 =====
  1934. X! fountain.c
  1935. X! potion.c
  1936. X! 
  1937. X! ===== Seg 20 =====
  1938. X! pray.c
  1939. X! 
  1940. X! ===== Seg 21 =====
  1941. X! sp_lev.c
  1942. X! 
  1943. X! ===== Seg 22 =====
  1944. X! mklev.c
  1945. X! restore.c
  1946. X! save.c
  1947. X! 
  1948. X! ===== Seg 23 =====
  1949. X! music.c
  1950. X! spell.c
  1951. X! 
  1952. X! ===== Seg 24 =====
  1953. X  bones.c
  1954. X  MacAlert.c
  1955. X  
  1956. X***************
  1957. X*** 142,149
  1958. X  ===== Seg 18 =====
  1959. X  artifact.c
  1960. X  bones.c
  1961. X! dbridge.c
  1962. X! demon.c
  1963. X! mkmaze.c
  1964. X! wizard.c
  1965. X! worm.c
  1966. X
  1967. X--- 152,176 -----
  1968. X  
  1969. X  ===== Seg 24 =====
  1970. X  bones.c
  1971. X! MacAlert.c
  1972. X! 
  1973. X! ===== Seg 25 =====
  1974. X! do_wear.c
  1975. X! 
  1976. X! ===== Seg 26 =====
  1977. X! extralev.c
  1978. X! 
  1979. X! ===== Seg 27 =====
  1980. X! dokick.c
  1981. X! 
  1982. X! ===== Seg 28 =====
  1983. X! zap.c
  1984. X! 
  1985. X! ===== Seg 29 =====
  1986. X! eat.c
  1987. X! 
  1988. X! ===== Seg 30 =====
  1989. X! uhitm.c
  1990. X! 
  1991. X! ===== Seg 31 =====
  1992. X! objnam.c
  1993. X
  1994. END_OF_FILE
  1995. if test 56824 -ne `wc -c <'patch7.22'`; then
  1996.     echo shar: \"'patch7.22'\" unpacked with wrong size!
  1997. fi
  1998. # end of 'patch7.22'
  1999. echo shar: End of archive 4 \(of 30\).
  2000. cp /dev/null ark4isdone
  2001. MISSING=""
  2002. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ; do
  2003.     if test ! -f ark${I}isdone ; then
  2004.     MISSING="${MISSING} ${I}"
  2005.     fi
  2006. done
  2007. if test "${MISSING}" = "" ; then
  2008.     echo You have unpacked all 30 archives.
  2009.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  2010. else
  2011.     echo You still need to unpack the following archives:
  2012.     echo "        " ${MISSING}
  2013. fi
  2014. ##  End of shell archive.
  2015. exit 0
  2016.